Working with Microservices in Go (Golang)
使用Go(Golang)进行微服务开发
Build highly available, scalable, resilient distributed applications using Go
使用Go构建高度可用、可扩展和健壮的分布式应用程序。
教程演示🔗
学生数量:19,795 个学生
上次更新时间:2024年2月
教程评分:4.6
教程语言:英语
教程字幕:中文、英语字幕
本课程包括:在移动设备和电视上观看、结业证书、完整的永久访问权、11.5 小时 长的随选视频、78 个可下载资源、2 篇文章字幕
学习内容
1、了解什么是微服务以及何时使用它们。
2、如何开发松耦合、单一功能的应用程序,以便它们作为分布式应用协同工作?
3、如何使用JSON、远程过程调用(Remote Procedure Call,RPC)和gRPC在服务间进行通信
4、如何使用高级消息队列协议(Advanced Message Queuing Protocol,AMQP)通过RabbitMQ向微服务推送事件
5、如何将您的分布式应用部署到Docker Swarm
6、如何将您的分布式应用部署到 Kubernetes 集群中
要求
1、关于我
01:01
2、安装 Go 语言
00:51
3、安装Visual Studio Code
01:28
4、安装Make
01:27
5、安装 Docker
00:51
6、寻求帮助
01:14
7、错误。我们都会犯。
8、对Go编程语言的基本理解
9、一台连接到互联网的Macintosh(麦金塔)、Windows或Linux电脑。
课程介绍
长期以来,网络应用通常是一个单一的应用,负责处理所有事务,即所谓的单体应用。这个单体应用负责用户身份验证、日志记录、发送邮件等所有功能。尽管这种做法仍然流行且有用,但如今,许多大型应用倾向于将其分解为微服务。现在,大多数大型组织都在使用这种方法构建网络应用,并且有充分的理由。
微服务,也称为微服务架构,是一种将应用程序结构化为一组松散耦合的小型应用的架构风格。微服务架构使得大型复杂应用的快速可靠交付成为可能。微服务的一些常见特性包括:
– 可维护和可测试;
– 与其他应用部分松散耦合;
– 可独立部署;
– 按业务能力组织;
– 通常由一个小团队负责。
在这门课程中,我们将开发一系列小型、自包含且松散耦合的微服务,它们之间以及与一个简单的前端应用(通过REST API、gRPC进行RPC通信)进行交互。我们还将通过AMQP(高级消息队列协议)发送和接收消息。我们构建的微服务将包括以下功能:
– 前端服务:显示网页;
– 认证服务,使用PostgreSQL数据库;
– 日志服务,使用MongoDB数据库;
– 监听者服务,接收RabbitMQ的消息并采取行动;
– 中间件服务(可选的微服务集群的单一入口点);
– 邮件服务,接受JSON负载,将其转换为格式化的邮件并发送出去。
所有这些服务都将使用Go语言编写,通常称为Golang,这是一种特别适合构建分布式网络应用的语言。
此外,我们还将学习如何将分布式应用部署到Docker Swarm和Kubernetes,根据需要进行扩展或缩减,并在几乎没有停机时间的情况下更新单个微服务。
微服务革命:WordPress SEO 内容
在这个WordPress页面上,深入探讨了现代网络应用的转型,从传统的单体架构转向高效、灵活的微服务架构。了解如何利用Go语言(Golang)构建一组独立且易于维护的微服务,如前端展示、安全认证(PostgreSQL)、日志管理(MongoDB)、消息监听(RabbitMQ)以及邮件发送功能。通过实践,你将学会如何部署到Docker Swarm和Kubernetes,实现无缝扩展与更新,提升应用性能和SEO排名。
课程亮点:
– **解耦复杂**:学习如何设计松散耦合的微服务,提高整体应用的可靠性与可维护性。
– **Go语言实践**:运用Golang构建高性能的微服务,适应分布式环境。
– **数据库管理**:掌握PostgreSQL和MongoDB的使用,优化数据存储与检索。
– **消息传递**:通过AMQP实现服务间通信,提升协作效率。
– **DevOps部署**:无缝部署到Docker Swarm和Kubernetes,确保高可用性和扩展性。
通过这个课程,提升你的WordPress网站SEO,确保内容质量的同时,让搜索引擎更青睐你的站点。