# Go微服务精讲：Go-Zero全流程实战即时通讯课程（已完结）

*Published:* 2024-05-22
*Author:* 客服001

#### 温馨提醒

如果文章内容或图片资源失效，请留言反馈，我们会及时处理，谢谢

本文最后更新于2024年12月29日，已超过 180天没有更新



**轻松应对复杂应用微服务设计，高效实践容器化组件管理，系统掌握Go 高薪关键技能。**

[![](https://www.xarjtc.com/wp-content/uploads/2024/05/3335304e948d057.webp)](https://www.xarjtc.com/wp-content/uploads/2024/05/3335304e948d057.webp)

**将学到：**

- 系统掌握微服务架构核心技能
- 增强分布式架构设计实战能力
- 打通 GoZero 应用到底层闭环
- 具备容器化 &amp; 监控落地能力
- 探索自研框架提升微服务能力
- 提升疑难问题分析与解决能力

**简介：**

> 如何轻松应对复杂应用的微服务架构设计?如何实现高效的容器化组件管理，快速成为 Go 高薪工程师?本课程结合经典 IM 项目，带你深入微服务架构精髓，探究主流微服务框架Go-Zero框架底层运作机制和框架自研之道，让你从分布式系统架构设计、容器化部署管理、高并发性能提升、系统监控等，多维度掌握Go开发高薪技能，助力你快速成为行业急需人才。

**适合人群**

对GO微服务化感兴趣的同学

正在实践微服务，希望加深对微服务架构理解的同学

**技术储备**

熟悉GO基础操作

了解Linux基本应用

**环境参数**

go v1.19.\*

grpc 1.57.\*

go-zero 1.5.\*

docker 18.\*

**章节目录：**

第1章 从0进入微服务需要了解的基础知识

7 节|42分钟

展开

视频：

1-1 保姆级教学，带你落地GO微服务

试看

06:16

视频：

1-2 系统架构演化过程

10:27

视频：

1-3 微服务核心要素之拆分原则

05:39

视频：

1-4 微服务核心要素之服务化

05:04

视频：

1-5 微服务核心要素之通信机制

05:52

视频：

1-6 微服务核心要素之无状态

07:59

图文：

1-7 【拓展】服务架构的设计原则

第2章 掌握rpc/grpc并探究内在本质

13 节|154分钟

收起

视频：

2-1 rpc是什么?又如何实现服务通信?

07:58

视频：

2-2 为什么是以rpc为主而不是restful?

04:57

视频：

2-3 net/rpc实践案例

12:15

视频：

2-4 看看netrpc的通信调度实现的内部原理

11:48

视频：

2-5 grpc介绍与下载安装

08:59

视频：

2-6 grpc框架实践案例

22:05

视频：

2-7 protobuf的协议原理

15:32

视频：

2-8 理解grpc的请求协议http2

16:39

视频：

2-9 grpc的服务端连接调度实现原理分析(上)

09:42

视频：

2-10 grpc的服务端连接调度实现原理分析(下)

16:12

视频：

2-11 grpc的客户端请求发送实现原理分析

12:26

图文：

2-12 【谈论】实现功能就好为什么还要阅读框架源码?

视频：

2-13 章节总结

14:56

第3章 上手微服务框架go-zero

12 节|118分钟

收起

视频：

3-1 微服务框架与web框架的区别点在哪儿?

08:36

视频：

3-2 为什么选go-zero?

07:30

视频：

3-3 下载并认识go-zero

05:28

视频：

3-4 实践go-zero基础功能案例(api与rpc)--上

11:20

视频：

3-5 实践go-zero基础功能案例(api与rpc)--下

20:13

视频：

3-6 实践go-zero基础功能案例(数据库读写与中间件(上)

14:27

视频：

3-7 实践go-zero基础功能案例(数据库读写与中间件(下)

08:27

视频：

3-8 探究go-zero是如何基于grpc进一步扩展-server

试看

15:29

视频：

3-9 探究go-zero是如何基于grpc进一步扩展-client

06:01

视频：

3-10 关于go-zero中的api服务启动流程

10:00

图文：

3-11 【扩展】go-zero中集成gorm

视频：

3-12 章节总结

10:01

第4章 微服务必备容器化技术

6 节|95分钟

展开

视频：

4-1 docker介绍与安装及上手应用

21:38

视频：

4-2 dockerfile介绍并创建go-zero环境容器(上)

20:47

视频：

4-3 dockerfile介绍并创建go-zero环境容器(下)

20:27

视频：

4-4 docker-compose编排(上)

05:06

视频：

4-5 docker-compose编排(下)

10:43

视频：

4-6 docker-compose编排(中)

15:41

第5章 项目业务与架构分析并准备项目基础开展环境

3 节|17分钟

展开

视频：

5-1 项目开展的业务需求与开展计划说明

07:27

视频：

5-2 项目开展的基础环境构建

09:20

图文：

5-3 【谈论】如何更好地学习新技术

第6章 构建用户/社交服务并分析服务发现与负载均衡原理

18 节|269分钟

展开

视频：

6-1 构建用户服务并编写服务部署脚本及dockerfile(上)

15:08

视频：

6-2 构建用户服务并编写服务部署脚本及dockerfile(下)

15:49

视频：

6-3 完成用户服务注册,登入功能(上)

18:56

视频：

6-4 完成用户服务注册,登入功能(下)

07:48

视频：

6-5 用户服务中搜索,用户信息功能实现(上)

14:23

视频：

6-6 用户服务中搜索,用户信息功能实现(下)

14:14

视频：

6-7 数据库与缓存一致性问题

17:59

视频：

6-8 go-zero在数据层使用的缓存机制实现分析

06:27

视频：

6-9 构建userapi服务并完善用户服务登入注册api

22:10

视频：

6-10 构建社交服务rpc服务并完成好友/群相关业务功能(上)

22:18

视频：

6-11 构建社交服务rpc服务并完成好友/群相关业务功能(下)

22:48

视频：

6-12 构建社交服务api服务并完成好友/群相关业务功能

25:37

视频：

6-13 微服务治理之服务注册中心

09:18

视频：

6-14 go-zero中微服务治理中心的具体实现原理

19:57

视频：

6-15 go-zero中负载均衡实现原理

14:55

视频：

6-16 发布并部署用户服务与社交服务

13:23

视频：

6-17 章节总结

07:43

图文：

6-18 go内核源码解析之源码阅读分析技巧

第7章 构建im服务并实现用户私聊及离线消息读取

26 节|421分钟

展开

视频：

7-1 im通信服务构建思路说明

02:36

视频：

7-2 理解websocket协议

11:15

视频：

7-3 websocket应用案例

07:42

视频：

7-4 im服务业务

08:36

视频：

7-5 im服务业务功能(上)

19:39

视频：

7-6 im服务业务功能(中)

19:34

视频：

7-7 im服务业务功能(下)

18:59

视频：

7-8 实现im服务用户登入连接

13:54

视频：

7-9 如何检测用户是否在线?心跳检测又实现呢?

17:59

视频：

7-10 实现im服务心跳检测

33:30

视频：

7-11 理解用户与好友私聊实现流程

09:56

视频：

7-12 实现用户与好友私聊实现流程

32:42

视频：

7-13 消息可靠与收发优化

试看

16:38

视频：

7-14 引入kafka消息中间件，并构建异步队列服务

16:05

视频：

7-15 基于kafka异步数据存储落地及消息通信(上)

21:25

视频：

7-16 基于kafka异步数据存储落地及消息通信(中)

20:15

视频：

7-17 基于kafka异步数据存储落地及消息通信(下)

13:29

视频：

7-18 消息收发ACK(上)

18:34

视频：

7-19 消息收发ACK(中)

27:24

视频：

7-20 消息收发ACK(下)

12:26

视频：

7-21 离线消息与历史消息分析

14:31

视频：

7-22 实现用户拉取离线消息

16:55

视频：

7-23 实现用户拉取离线消息(上)

11:50

视频：

7-24 实现用户拉取离线消息(中)

09:17

视频：

7-25 实现用户拉取离线消息(下)

09:12

视频：

7-26 本章总结

16:17

第8章 实现im服务消息群聊及消息可读未读

15 节|200分钟

展开

视频：

8-1 理解用户与群组聊天功能的实现思路

04:08

视频：

8-2 实现用户群聊功能

23:38

视频：

8-3 完善群聊消息业务

10:44

视频：

8-4 消息已读未读问题该如何实现?

11:24

视频：

8-5 从0实现bitmap

22:37

视频：

8-6 实现群聊消息已读未读(上)

15:22

视频：

8-7 实现群聊消息已读未读(中)

15:21

视频：

8-8 实现群聊消息已读未读(下)

13:42

视频：

8-9 消息已读未读如何进一步优化?(上)

14:45

视频：

8-10 消息已读未读如何进一步优化?(中)

10:48

视频：

8-11 消息已读未读如何进一步优化?(下)

12:37

视频：

8-12 发布部署IM服务

09:54

视频：

8-13 如何实现用户在线离线状态

07:10

视频：

8-14 实现用户在线状态维护

17:18

视频：

8-15 本章总结

10:09

第9章 构建api网关并优雅的处理各服务配置

9 节|107分钟

展开

视频：

9-1 网关是什么?解决什么问题?

05:36

视频：

9-2 下载并集成于apisix

10:33

视频：

9-3 服务太多配置不好管理如何优雅处理?

04:37

视频：

9-4 基于etcd做配置中心实现各个服务自动加载配置

21:06

视频：

9-5 配置订阅实现动态加载最新配置

21:49

视频：

9-6 实现im前后端数据交互(上)

13:57

视频：

9-7 实现im前后端数据交互(下)

25:32

图文：

9-8 【扩展】为IM服务核心集成服务发现机制

视频：

9-9 本章总结

03:40

第10章 微服务请求任务的三大措施：超时，重试，幂等

10 节|92分钟

展开

视频：

10-1 微服务中如果任务长时间没有响应会有什么问题?

04:08

视频：

10-2 在go-zero中是如何实现请求超时的呢?

06:48

视频：

10-3 微服务中任务失败后又如何进行重试?

18:10

视频：

10-4 业务任务失败重试处理

14:24

视频：

10-5 在微服务中如果任务多次重复请求会有什么问题?

07:52

视频：

10-6 幂等性实现方式与思路分析

06:02

视频：

10-7 实现社交服务创群请求幂等性(上)

21:17

视频：

10-8 实现社交服务创群请求幂等性(下)

08:50

图文：

10-9 【谈论】如何去分析一个问题呢?

视频：

10-10 本章总结

04:25

第11章 高可用的三大利器：熔断，限流，降级

12 节|111分钟

展开

视频：

11-1 熔断，限流，降级解决的问题与作用

08:47

视频：

11-2 熔断与超时有什么区别点

04:11

视频：

11-3 用户列表熔断处理

07:27

视频：

11-4 解析go-zero中熔断的实现原理

12:15

视频：

11-5 限流的实现方案有哪些

10:24

视频：

11-6 对社交服务群接口限流

16:35

视频：

11-7 go-zero中的限流器实现原理分析

09:49

视频：

11-8 降级在架构中的类型有哪些

04:55

视频：

11-9 go-zero的自动降级特技应用

13:01

视频：

11-10 go-zero自动降级内部探索

12:04

图文：

11-11 【谈论】有没有发现技术思想很多地方具有相似应用

视频：

11-12 本章总结

11:18

第12章 对系统进行全面监控分析

15 节|191分钟

展开

视频：

12-1 im服务消息发送失败如何定位问题

04:15

视频：

12-2 理解链路跟踪的实现思路分析

05:58

视频：

12-3 OpenTracing与jaeger理解及安装

17:05

视频：

12-4 基于jaeger实现消息群用户列表的链路跟踪

05:07

视频：

12-5 探究go-zero中链路跟踪的实现过程

26:59

视频：

12-6 ELK日志收集三件套架构分析

04:19

视频：

12-7 基于docker构建elk架构

16:13

视频：

12-8 基于filebeat收集各个服务的日志信息

08:44

视频：

12-9 配置Kibana仪表盘实现可视化

02:55

视频：

12-10 如何实现对各个服务的性能监控?

04:51

视频：

12-11 promethues+grafana安装部署

18:31

视频：

12-12 实现对im通讯服务性能的监控

15:23

视频：

12-13 go-zero与elk巧妙结合(上)

27:14

视频：

12-14 go-zero与elk巧妙结合(下)

20:45

视频：

12-15 本章总结

11:54

第13章 创新加持：自研助力企业进阶与个人成长

10 节|111分钟

展开

视频：

13-1 为什么需要自研?满足企业需求、提升个人能力

05:39

视频：

13-2 框架的构建核心结构设计分析

05:52

视频：

13-3 基于grpc实现框架rpc\_server

14:58

视频：

13-4 基于grpc实现rpc\_client

16:59

视频：

13-5 集成服务发现机制(上)

08:43

视频：

13-6 集成服务发现机制(下)

16:49

视频：

13-7 集成负载均衡机制

15:10

视频：

13-8 请求超时重试处理

17:12

视频：

13-9 课程总结

09:25

图文：

13-10 【谈论】平时我们该如何提升自己的能力

本课程已完结