|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/working-with-microservices-in-go/
课程评论:没有评论
课程名:使用Go语言(Golang)进行微服务开发 课程概述:长久以来,网络应用通常是单一的应用程序,亦即单体应用,负责处理用户认证、日志记录、发送电子邮件等所有功能。尽管这种方式仍然广受欢迎并且实用,但如今,许多大规模应用倾向于将其拆分为微服务。微服务架构是一种将应用程序结构化为松散耦合的小型应用集合的架构风格,允许快速且可靠地交付大型复杂应用。 在本课程中,我们将开发多个小型、自包含、松散耦合的微服务,这些服务将通过REST API、gRPC以及使用高级消息队列协议(AMQP)发送和接收消息相互通讯。我们所构建的微服务包括: - 前端服务,用于展示网页; - 认证服务,使用Postgres数据库; - 日志服务,使用MongoDB数据库; - 监听服务,从RabbitMQ接收消息并进行处理; - 代理服务,作为微服务集群的单一入口(可选); - 邮件服务,将JSON有效载荷转换为格式化电子邮件并发送。 所有这些服务将使用Go语言编写,Go语言特别适合于构建分布式网络应用。我们还将学习如何将我们的分布式应用部署到Docker Swarm和Kubernetes中,并根据需要进行扩展或缩减,以及如何在几乎没有停机时间的情况下更新单个微服务。 请注意,本课程需要下载Docker Desktop。如果您是Udemy Business用户,请在下载软件之前与雇主确认。
For a long time, web applications were usually a single application that handled everything-in other words, a monolithic application. This monolith handled user authentication, logging, sending email, and everything else. While this is still a popular (and useful) approach, today, many larger scale applications tend to break things up into microservices. Today, most large organizations are focused on building web applications using this approach, and with good reason.Microservices, also known as the microservice architecture, are an architectural style which structures an application as a loosely coupled collection of smaller applications. The microservice architecture allows for the rapid and reliable delivery of large, complex applications. Some of the most common features for a microservice are:it is maintainable and testable;it is loosely coupled with other parts of the application;it can deployed by itself;it is organized around business capabilities;it is often owned by a small team.In this course, we'll develop a number of small, self-contained, loosely coupled microservices that will will communicate with one another and a simple front-end application with a REST API, with RPC, over gRPC, and by sending and consuming messages using AMQP, the Advanced Message Queuing Protocol. The microservices we build will include the following functionality:A Front End service, that just displays web pages;An Authentication service, with a Postgres database;A Logging service, with a MongoDB database;A Listener service, which receives messages from RabbitMQ and acts upon them;A Broker service, which is an optional single point of entry into the microservice cluster;A Mail service, which takes a JSON payload, converts into a formatted email, and send it out.All of these services will be written in Go, commonly referred to as Golang, a language which is particularly well suited to building distributed web applications.We'll also learn how to deploy our distributed application to a Docker Swarm and Kubernetes, and how to scale up and down, as necessary, and to update individual microservices with little or no downtime.Please note that this course requires you to download Docker Desktop from Docker. If you are a Udemy Business user, please check with your employer before downloading software.