在 Go (Golang) 中使用微服务
使用 Go 构建高度可用、可扩展、有弹性的分布式应用程序
讲师:Trevor Sawler
口袋资源独家Udemy付费课程,独家中英文字幕,配套资料齐全!
用不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。
你将会学到的
- 了解什么是微服务以及何时使用它们
- 如何开发作为分布式应用程序一起工作的松散耦合、单一用途的应用程序
- 如何使用 JSON、远程过程调用和 gRPC 在服务之间进行通信
- 如何使用 RabbitMQ 使用高级消息队列协议 (AMQP) 将事件推送到微服务
- 如何将分布式应用程序部署到 Docker Swarm
- 如何将你的分布式应用程序部署到 Kubernetes 集群
课程内容
12 个章节 • 132 个讲座 • 总时长 11 小时 31 分钟展开所有章节
介绍8 个讲座 • 17 分钟
构建一个简单的前端和一个微服务9 个讲座 • 55 分钟
构建身份验证服务9 个讲座 • 1 小时 10 分钟
构建记录器服务11 个讲座 • 1 小时 13 分钟
构建邮件服务10 个讲座 • 1 小时 8 分钟
构建监听器服务:AMQP 和 RabbitMQ13 个讲座 • 1 小时 13 分钟
使用远程过程调用 (RPC) 在服务之间进行通信5 个讲座 • 21 分钟
使用 gRPC 加速(可能)9 个讲座 • 43 分钟
使用 Docker Swarm 部署我们的分布式应用程序27 个讲座 • 2 小时 11 分钟
将我们的分布式应用程序部署到 Kubernetes22 个讲座 • 1 小时 34 分钟
测试微服务8 个讲座 • 42 分钟
最后的想法1 个讲座 • 4 分钟
要求
- 对 Go 编程语言的基本了解
- 连接到 Internet 的 Macintosh、Windows 或 Linux 计算机
说明
长期以来,Web 应用程序通常是一个处理所有事情的单一应用程序——换句话说,一个单体应用程序。这个整体处理用户身份验证、日志记录、发送电子邮件和其他所有事情。虽然这仍然是一种流行(且有用)的方法,但今天,许多更大规模的应用程序倾向于将事物分解为微服务。今天,大多数大型组织都专注于使用这种方法构建 Web 应用程序,这是有充分理由的。
微服务,也称为微服务架构,是一种架构风格,它将应用程序构建为较小应用程序的松散耦合集合。微服务架构允许快速可靠地交付大型、复杂的应用程序。微服务的一些最常见的功能是:
- 它是可维护和可测试的;
- 它与应用程序的其他部分松散耦合;
- 可自行部署;
- 它是围绕业务能力组织的;
- 它通常由一个小团队拥有。
在本课程中,我们将开发一些小型、自包含、松散耦合的微服务,它们将相互通信,以及一个简单的前端应用程序,使用REST API、RPC、gRPC,并通过发送和消费使用高级消息队列协议AMQP的消息。我们构建的微服务将包括以下功能:
- 前端服务,只显示网页;
- 一个身份验证服务,带有一个 Postgres 数据库;
- 一个日志服务,带有一个 MongoDB 数据库;
- 一个 Listener 服务,它接收来自 RabbitMQ 的消息并对其进行操作;
- Broker 服务,它是微服务集群的可选单点入口;
- 一个邮件服务,它接受一个 JSON 有效负载,转换成一个格式化的电子邮件,然后发送出去。
所有这些服务都将用 Go 编写,通常称为 Golang,这种语言特别适合构建分布式 Web 应用程序。
我们还将学习如何将我们的分布式应用程序部署到Docker Swarm和Kubernetes,以及如何根据需要进行扩展和缩减,以及如何在很少或没有停机时间的情况下更新单个微服务。
此课程面向哪些人:
- 使用过单体应用程序并想学习如何使用微服务的 Go 开发人员
声明:口袋资源网(koudaizy.com)提供的所有课程、素材等资源全部来源于互联网,赞助VIP仅用于对口袋资源服务器带宽及网站运营等费用支出做支持,从本站下载资源,说明你已同意本条款。