欢迎购买学习《2022版Go语言微服务高可扩展和弹性分布式应用系统开发视频教程》课程,你将学习使用Go语言构建高度可用、可扩展、有弹性的分布式应用程序。在本课程中,我们将开发一些小型、自包含、松散耦合的微服务,它们将相互通信,以及一个简单的前端应用程序,使用 REST API、RPC、gRPC,并通过发送和消费使用 AMQP(高级消息队列协议)的消息。
发表于 04/2022
MP4 | 视频:h264, 1280×720 | 音频:AAC,44.1 KHz,2 Ch
类型:eLearning | 语言:英语 + srt | 时长:123 节课(10 小时 44 米)| 大小:3.81 GB
你会学到什么
- 了解什么是微服务以及何时使用它们
- 开发可协同工作的松散耦合、单一用途的应用程序
- 使用 JSON、远程过程调用和 gRPC 在服务之间进行通信
- 了解如何使用 etcd 实现服务发现
- 了解如何使用 RabbitMQ 使用高级消息队列协议 (AMQP) 将事件推送到微服务
要求
- 对 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 开发人员