【Udemy 微服务架构最新热门】Working with Microservices in Go

使用 Go 构建高度可用、可扩展、有弹性的分布式应用程序

你将会学到的

  • 了解什么是微服务以及何时使用它们
  • 如何开发作为分布式应用程序一起工作的松散耦合、单一用途的应用程序
  • 如何使用 JSON、远程过程调用和 gRPC 在服务之间进行通信
  • 如何使用 RabbitMQ 使用高级消息队列协议 (AMQP) 将事件推送到微服务
  • 如何将分布式应用程序部署到 Docker Swarm
  • 如何将您的分布式应用程序部署到 Kubernetes 集群

要求

  • 对 Go 编程语言的基本了解
  • 连接到 Internet 的 Macintosh、Windows 或 Linux 计算机

说明

长期以来,Web 应用程序通常是一个处理所有事情的单一应用程序——换句话说,一个单体应用程序。这个整体处理用户身份验证、日志记录、发送电子邮件和其他所有事情。虽然这仍然是一种流行(且有用)的方法,但今天,许多更大规模的应用程序倾向于将事物分解为微服务。今天,大多数大型组织都专注于使用这种方法构建 Web 应用程序,这是有充分理由的。

服务,也称为微服务架构,是一种架构风格,它将应用程序构建为较小应用程序的松散耦合集合。微服务架构允许快速可靠地交付大型、复杂的应用程序。微服务的一些最常见的功能是:

  • 它是可维护和可测试的;
  • 它与应用程序的其他部分松散耦合;
  • 可自行部署;
  • 它是围绕业务能力组织的;
  • 它通常由一个小团队拥有。

在本课程中,我们将开发一些小型、自包含、松散耦合的微服务,它们将相互通信,以及一个简单的前端应用程序,使用REST API、RPCgRPC,并通过发送和消费使用高级消息队列协议AMQP的消息。我们构建的微服务将包括以下功能:

  • 前端服务,只显示网页;
  • 一个身份验证服务,带有一个 Postgres 数据库;
  • 一个日志服务,带有一个 MongoDB 数据库;
  • 一个 Listener 服务,它接收来自 RabbitMQ 的消息并对其进行操作;
  • Broker 服务,它是微服务集群的可选单点入口;
  • 一个邮件服务,它接受一个 JSON 有效负载,转换成一个格式化的电子邮件,然后发送出去。

所有这些服务都将用 Go 编写,通常称为 Golang,这种语言特别适合构建分布式 Web 应用程序。

我们还将学习如何将我们的分布式应用程序部署到Docker SwarmKubernetes,以及如何根据需要扩大和缩小规模,以及如何在很少或没有停机时间的情况下更新单个微服务。

此课程面向哪些人:

  • 使用过单体应用程序并想学习如何使用微服务的 Go 开发人员
声明:本站所有资源、素材等全部来源于互联网,赞助VIP仅用于对IT资源服务器带宽等费用支出做支持,从本站下载资源,说明你已同意本条款。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
IT资源 - 高品质精品资源分享网站 » 【Udemy 微服务架构最新热门】Working with Microservices in Go