Go进阶 IM系统设计与落地,单体到微服务深度剖析

拆解单体→分层→微服务核心,提炼通用模型,强化架构决策力,构筑AI时代技术壁垒

已完结
|
难度:中级
|
时长:共 30 小时
429
原价¥499.00
距离活动结束
立即购买
加购物车
  • 重塑架构思维与设计理念
  • 掌握高并发与高可用架构设计
  • 提升复杂系统的拆解能力
  • 掌握可复用的架构设计模型
  • 掌握技术选型与决策心法
  • 积累企业级架构实战经验
试看本节课 14:27
试看本节课 15:38
试看本节课 06:41
1-1 AI都能写代码了,工程师的核心价值在哪?
2-2 什么是软件架构?理解三要素把握架构本质
6-6 发消息接口,掌握消息处理基本流程(1)

课程预览

检测到您还没有关注慕课网服务号,无法接收课程更新通知。请扫描二维码即可绑定
重新观看
AI 正在重构开发范式,编码门槛降低,而驾驭复杂系统的架构能力,正成为开发者最大的价值壁垒。本课程以技术密度高、设计扩展性强的IM系统为实战载体,聚焦架构设计。我们不仅深度剖析单体→分层→微服务的核心组件,更深入其底层逻辑,并从中提炼出通用设计模型。助你不仅能攻克高并发、分布式等核心难题,更能全面提升驾驭复杂系统的架构设计灵活性与决策力,加速构筑起AI不可替代的技术护城河!

本章介绍:

课程导学带大家宏观上把控整个课程内容,明确课程能帮助大家提升的核心点。本章首先通过16个典型热点问题带大家迅速入门,从侧面了解课程要解决的问题,然后通过一张课程架构图帮助大家深入了解课程结构,最后通过两个内容案例让大家深刻理解到学习设计模型的重要性。通过本章学习,你将明确课程的内容和学习方式,为后续高质量学习提供方向。

第1章 IM系统架构演进—课程导学
1 节|15分钟
展开
  • 视频:
    1-1 AI都能写代码了,工程师的核心价值在哪?
    试看
    14:27

本章介绍:

设计架构之前,需要掌握架构设计的“抓手”。本章首先分析软件架构的本质,教会大家分析架构的通用套路,然后对三类典型架构(单体架构、分层架构、微服务架构),分别从普适性架构模型、架构关键问题、架构优势和劣势、架构适用场景等方面进行深入剖析,最后以电商案例进行应用扩展。通过本章学习,你将深入理解什么是架构,通过什么样的思维框架来分析架构和设计架构,为后续章节学习打下基础。

第2章 解读软件架构—掌握架构设计抓手
16 节|194分钟
收起
  • 视频:
    2-1 一张图,通览全章
    02:43
  • 视频:
    2-2 什么是软件架构?理解三要素把握架构本质
    试看
    15:38
  • 视频:
    2-3 剖析RPC架构案例,彻底掌握架构本质
    15:35
  • 视频:
    2-4 什么是单体架构?掌握单体架构模型
    10:39
  • 视频:
    2-5 单体架构如何扩展?掌握通用扩展方案
    14:31
  • 视频:
    2-6 分析单体架构优劣势,明确适用场景
    09:44
  • 视频:
    2-7 架构如何拆分?掌握架构拆分利器
    11:05
  • 视频:
    2-8 什么是分层架构?掌握分层架构模型
    10:10
  • 视频:
    2-9 架构分层原则,实现软件设计的合理分层
    08:56
  • 视频:
    2-10 分析分层架构优劣势,明确适用场景
    11:11
  • 视频:
    2-11 什么是微服务架构?掌握微服务架构模型
    10:33
  • 视频:
    2-12 三维模型,深入理解微服务扩展性
    12:38
  • 视频:
    2-13 普适架构,整体把握微服务架构设计
    16:27
  • 视频:
    2-14 分析微服务架构优劣势,掌握适用场景(1)
    08:37
  • 视频:
    2-15 分析微服务架构优劣势,掌握适用场景(2)
    16:47
  • 视频:
    2-16 剖析二手电商,扩展知识应用
    18:15

本章介绍:

软件研发是在普适性模型基础上进行的个性化扩展,需要掌握软件研发的各类模型。本章以 IM 系统为主线,分别深入剖析需求分析模型、业务模型、三高模型、IM 的开发模型(信箱模型、电话模型、BP机模型)、IM 的运行模型(介绍人模型、代理人模型),最后以电商案例进行应用扩展。通过本章学习,你将深入理解各类业务设计模型,并举一反三,应用到其他业务场景中,进一步提升软件设计能力。

第3章 IM 系统分析—理解业务设计模型
12 节|132分钟
收起
  • 视频:
    3-1 一张图,通览全章
    09:21
  • 视频:
    3-2 需求分析模型,掌握分析需求的利器
    12:10
  • 视频:
    3-3 IM需求模型,全局把控IM需求
    21:34
  • 视频:
    3-4 IM业务模型,深入理解核心需求
    06:07
  • 视频:
    3-5 三高模型,深入理解三高内容
    05:38
  • 视频:
    3-6 理解IM本质,对开发模型成竹在胸
    08:05
  • 视频:
    3-7 信箱模型,让消息随时拉取
    05:56
  • 视频:
    3-8 电话模型,让消息实时推送
    06:03
  • 视频:
    3-9 BP机模型,掌握消息推拉结合解决方案
    13:30
  • 视频:
    3-10 介绍人模型,了解客户端直接通信原理
    26:43
  • 视频:
    3-11 代理人模型,让服务端成为消息中转站
    04:10
  • 视频:
    3-12 剖析电商需求,扩展知识应用
    12:20

本章介绍:

在什么业务场景下会提供单体架构方案,方案如何设计?我们会学习到哪些设计模型?本章以实际的企业游戏 IM 案例为基础,介绍业务背景、分析功能需求和非功能需求、剖析 IM 的单体架构方案以及单体架构方案下的技术选型,最后以电商案例进行应用扩展。通过本章学习,你将深入理解业务背景与单体架构两者之间的模型设计关系,并掌握单体架构设计的关键问题。

第4章 IM 单体架构设计—解锁业务背景与单体方案的深层关系
9 节|71分钟
展开
  • 视频:
    4-1 一张图,通览全章
    02:15
  • 视频:
    4-2 交待业务背景,理解单体IM应用缘由
    06:48
  • 视频:
    4-3 功能需求分析,明确单体IM上层业务
    03:38
  • 视频:
    4-4 非功能需求分析,不能忽视的隐形需求
    06:07
  • 视频:
    4-5 总体架构设计,交付单体IM解决方案
    15:28
  • 视频:
    4-6 传输协议分析,选型简单和容易落地的
    13:44
  • 视频:
    4-7 编程语言分析,选型公司和团队熟悉的
    08:00
  • 视频:
    4-8 数据库分析,选型满足需求和容易运维的
    09:14
  • 视频:
    4-9 剖析电商单体架构,扩展知识应用
    05:03

本章介绍:

对 IM 单体架构设计方案进行落地需要解决哪些关键问题呢?本章延续 IM 单体架构设计章节,以实际的企业游戏 IM 为基础,介绍了落地的单体工程、分析了反向代理应用、深入剖析了 Server 端框架、对数据库和缓存进行了设计、并通过定时器和时间轮两种方案实现了 http 长轮询,最后对落地的单体架构进行了压测。通过本章学习,你将深入理解单体架构落地的关键问题,并总结出解决问题的核心思路。

第5章 IM 单体架构落地—掌握单体架构落地的关键问题
15 节|204分钟
展开
  • 视频:
    5-1 一张图,通览全章
    06:54
  • 视频:
    5-2 了解IM代码工程,明确模块组成
    05:08
  • 视频:
    5-3 理解Nginx原理,加强反向代理应用
    38:31
  • 视频:
    5-4 分析Server框架,理解业务代码的运行基座(1)
    24:29
  • 视频:
    5-5 数据库表设计,理解持久化数据的结构
    23:08
  • 视频:
    5-6 缓存设计,用户在线状态实现的关键
    10:36
  • 视频:
    5-7 Http长轮询,理解模拟长连接的核心原理
    06:17
  • 视频:
    5-8 定时器,Http长轮询的简易落地方案(1)
    09:55
  • 视频:
    5-9 定时器,Http长轮询的简易落地方案(2)
    04:33
  • 视频:
    5-10 时间轮,Http长轮询的低成本方案(1)
    15:13
  • 视频:
    5-11 时间轮,Http长轮询的低成本方案(2)
    14:12
  • 视频:
    5-12 时间轮,Http长轮询的低成本方案(3)
    03:49
  • 视频:
    5-13 并发压测,评估Server负载能力的有效工具(1)
    15:09
  • 视频:
    5-14 并发压测,评估Server负载能力的有效工具(2)
    17:12
  • 视频:
    5-15 并发压测,评估Server负载能力的有效工具(3)
    08:28

本章介绍:

基于 IM 单体架构方案,IM 业务功能如何实现呢?本章延续 IM 单体架构落地章节,以实际的企业游戏 IM 业务功能实现为基础,介绍了用户登录、用户登出、客户端心跳保活等功能设计与实现,并重点讲解了信箱模式与电话模式下 IM 消息收发功能的设计与实现,给出了业务设计模型的典型场景应用。通过本章学习,你将深入掌握单体架构设计下 IM 业务功能设计和实现中的关键问题,并深入理解业务设计模型的扩展应用。

第6章 单体架构 IM 功能实现—学会业务设计模型应用
14 节|137分钟
展开
  • 视频:
    6-1 一张图,通览全章
    06:57
  • 视频:
    6-2 登录接口,实现业务功能的基础(1)
    23:55
  • 视频:
    6-3 登录接口,实现业务功能的基础(2)
    07:20
  • 视频:
    6-4 登出接口,清理用户的在线状态(1)
    03:27
  • 视频:
    6-5 登出接口,清理用户的在线状态(2)
    01:28
  • 视频:
    6-6 发消息接口,掌握消息处理基本流程(1)
    试看
    06:41
  • 视频:
    6-7 发消息接口,掌握消息处理基本流程(2)
    08:22
  • 视频:
    6-8 发消息接口,掌握消息处理基本流程(3)
    06:02
  • 视频:
    6-9 心跳接口,掌握信箱模式下如何收消息(1)
    15:15
  • 视频:
    6-10 心跳接口,掌握信箱模式下如何收消息(2)
    04:53
  • 视频:
    6-11 电话模式收发消息,提升消息的实时性(1)
    19:59
  • 视频:
    6-12 电话模式收发消息,提升消息的实时性(2)
    11:37
  • 视频:
    6-13 电话模式收发消息,提升消息的实时性(3)
    07:57
  • 视频:
    6-14 剖析电话模式集群部署,扩展知识应用
    12:31

本章介绍:

在什么业务场景下会提供分层架构方案,方案如何设计?我们会学习到哪些设计模型?本章以实际的互联网电商 IM 案例为基础,介绍业务背景、分析功能需求和非功能需求、剖析 IM 的分层架构方案以及分层架构方案下的技术选型,并解读 IM 分层架构2.0和3.0的迭代演进,最后以电商案例进行应用扩展。通过本章学习,你将深入理解业务背景与分层架构两者之间的模型设计关系,并掌握分层架构设计的关键问题。

第7章 IM 分层架构设计—解锁业务背景与分层方案的深层关系
9 节|97分钟
展开
  • 视频:
    7-1 一张图,通览全章
    04:36
  • 视频:
    7-2 业务背景剖析,理解分层IM应用缘由
    19:40
  • 视频:
    7-3 需求分析,明确系统功能和质量属性
    08:21
  • 视频:
    7-4 总体架构设计,交付分层IM解决方案
    15:41
  • 视频:
    7-5 三高分析,理解分层架构核心原理
    18:24
  • 视频:
    7-6 技术选型,明确各模块落地工具
    06:38
  • 视频:
    7-7 分层架构2.0,学会业务轻重分离
    07:01
  • 视频:
    7-8 分层架构3.0,学会MQ解耦业务
    08:15
  • 视频:
    7-9 剖析电商分层架构,扩展知识应用
    08:06

本章介绍:

对 IM 分层架构设计方案进行落地需要解决哪些关键问题呢?本章延续 IM 分层架构设计章节,以实际的互联网电商 IM 为基础,介绍落地的分层工程、深入剖析 Entry、Logic、Das 和 Router 四大核心模块的设计,并对其关键代码实现进行解读,对数据库进行设计的同时重点对消息的双向存储与云消息模式进行分析。通过本章学习,你将深入理解分层架构落地的关键问题,并抽象总结高并发服务的普适设计思路。“IM 分层架构落地”分为两章,本章为(上)。

第8章 IM 分层架构落地(上)—掌握分层架构落地的关键问题
14 节|228分钟
展开
  • 视频:
    8-1 一张图,通览全章
    04:29
  • 视频:
    8-2 了解IM分层代码工程,明确模块组成
    07:01
  • 视频:
    8-3 把握Router全局架构位置,入手架构设计
    04:39
  • 视频:
    8-4 理解Router核心设计,掌握关键问题
    24:46
  • 视频:
    8-5 分析router 结构, 创建router代码工程
    14:38
  • 视频:
    8-6 编写gomem代码
    25:21
  • 视频:
    8-7 编写gomsg、goqueue、gomap代码
    21:14
  • 视频:
    8-8 编写gosocket代码(1)
    21:23
  • 视频:
    8-9 编写gosocket代码(2)
    21:40
  • 视频:
    8-10 编写工具方法代码
    26:31
  • 视频:
    8-11 编写goroutinepool代码(1)
    19:20
  • 视频:
    8-12 编写goroutinepool代码(2)
    10:38
  • 视频:
    8-13 编写main.go代码
    15:15
  • 视频:
    8-14 编写client代码,运行router
    10:56

本章介绍:

对 IM 分层架构设计方案进行落地需要解决哪些关键问题呢?本章延续 IM 分层架构设计章节,以实际的互联网电商 IM 为基础,介绍落地的分层工程、深入剖析 Entry、Logic、Das 和 Router 四大核心模块的设计,并对其关键代码实现进行解读,对数据库进行设计的同时重点对消息的双向存储与云消息模式进行分析。通过本章学习,你将深入理解分层架构落地的关键问题,并抽象总结高并发服务的普适设计思路。“IM 分层架构落地”分为两章,本章为(下)。

第9章 IM 分层架构落地(下)—掌握分层架构落地的关键问题
14 节|160分钟
展开
  • 视频:
    9-1 把握Das全局架构位置,入手架构设计
    04:18
  • 视频:
    9-2 理解Das核心设计,掌握关键问题
    10:35
  • 视频:
    9-3 分析das 结构, 创建das代码工程
    02:42
  • 视频:
    9-4 编写godb代码
    17:03
  • 视频:
    9-5 编写gomsg代码
    08:35
  • 视频:
    9-6 编写goroutinepool代码
    25:46
  • 视频:
    9-7 完善代码,运行das
    15:18
  • 视频:
    9-8 把握Logic全局架构位置,入手架构设计
    08:37
  • 视频:
    9-9 理解Logic核心设计,掌握关键问题
    18:40
  • 视频:
    9-10 把握Entry全局架构位置,入手架构设计
    03:43
  • 视频:
    9-11 理解Entry核心设计,掌握关键问题
    17:05
  • 视频:
    9-12 了解用户表结构,掌握关键字段设计
    07:16
  • 视频:
    9-13 了解联系人表结构,掌握分表逻辑
    08:26
  • 视频:
    9-14 了解消息表结构,掌握双向存储与消息云模式
    11:48

本章介绍:

基于 IM 分层架构方案,IM 业务功能如何实现呢?本章延续 IM 分层架构落地章节,以实际的互联网电商 IM 业务功能实现为基础,介绍用户登录、用户登出、用户的在线状态维护等功能设计与实现,并重点讲解消息收发的三个阶段的设计如何保证消息的可靠性,并给出时间轮等业务设计模型的典型场景应用。通过本章学习,你将深入掌握分层架构设计下 IM 业务功能设计和实现中的关键问题,并深入理解业务设计模型的扩展应用。

第10章 分层架构 IM 功能实现—学会业务设计模型应用
11 节|126分钟
展开
  • 视频:
    10-1 一张图,通览全章
    04:23
  • 视频:
    10-2 用户登录,串联分层架构全局模块
    21:11
  • 视频:
    10-3 用户登出,清理用户的在线信息
    08:32
  • 视频:
    10-4 心跳机制,维护客户端在线状态(1)
    11:31
  • 视频:
    10-5 心跳机制,维护客户端在线状态(2)
    09:24
  • 视频:
    10-6 消息收发第一阶段,实现消息发送
    14:15
  • 视频:
    10-7 消息收发第二阶段,实现消息推送
    19:43
  • 视频:
    10-8 消息收发第三阶段,实现消息确认
    13:31
  • 视频:
    10-9 时间轮方案,高并发下的轻量级消息ack机制
    11:29
  • 视频:
    10-10 未读数逻辑,提升系统可靠的用户体验
    06:37
  • 视频:
    10-11 剖析轻量级的未读数模型,扩展知识应用
    04:32

本章介绍:

在什么业务场景下会提供微服务架构方案,方案如何设计?我们会学习到哪些设计模型?本章以实际的互联网电商 IM 案例为基础,介绍业务背景、分析功能需求和非功能需求、剖析 IM 的微服务架构方案以及微服务架构方案下的技术选型,并对微服务的关键问题—服务拆分原则进行重点剖析,最后以电商案例进行应用扩展。通过本章学习,你将深入理解业务背景与微服务架构两者之间的模型设计关系,并掌握微服务架构设计的关键问题。

第11章 IM 微服务架构设计—解锁业务背景与微服务方案的深层关系
7 节|91分钟
展开
  • 视频:
    11-1 一张图,通览全章
    03:56
  • 视频:
    11-2 业务背景剖析,理解微服务IM应用缘由
    08:39
  • 视频:
    11-3 需求分析,明确系统功能和质量属性
    15:31
  • 视频:
    11-4 总体架构设计,交付微服务IM解决方案
    17:52
  • 视频:
    11-5 如何拆分服务,掌握服务拆分的核心原则
    18:29
  • 视频:
    11-6 技术选型,了解微服务开源组件技术
    19:34
  • 视频:
    11-7 剖析电商微服务架构,扩展知识应用
    06:43

本章介绍:

对 IM 微服务架构设计方案进行落地需要解决哪些关键问题呢?本章延续 IM 微服务架构设计章节,以实际的互联网电商 IM 为基础,介绍入口层服务的三大部署模式—DNS 模式、IPList 模式和 TGW 模式、分析入口层服务的三大心跳算法—遍历扫描算法、局部扫描算算法和动态分组算法、剖析数据层服务的三大设计模型—共享队列模式、独立队列模式和独立进程模式、解读微服务的三大核心组件—RPC、注册中心和消息队列。通过本章学习,你将深入理解微服务架构落地的关键问题,并抽象总结微服务架构在落地时关键问题的核心思路。

第12章 IM 微服务架构落地—掌握微服务架构落地的关键问题
20 节|183分钟
展开
  • 视频:
    12-1 一张图,通览全章
    11:04
  • 视频:
    12-2 DNS 模式,了解入口层低成本部署模式
    07:20
  • 视频:
    12-3 IPList 模式,了解入口层轻量级部署模式
    12:22
  • 视频:
    12-4 TGW 模式,了解入口层强大的部署模式
    08:50
  • 视频:
    12-5 遍历扫描,掌握小型流量规模的心跳算法
    09:28
  • 视频:
    12-6 局部扫描,掌握中型流量规模的心跳算法
    10:06
  • 视频:
    12-7 动态分组,掌握大型流量规模的心跳算法
    11:24
  • 视频:
    12-8 入口层设计,抽取入口层服务复用模块
    14:54
  • 视频:
    12-9 das共享队列模式,实现业务请求逻辑隔离
    07:06
  • 视频:
    12-10 das独立队列模式,实现业务请求线程级隔离
    05:32
  • 视频:
    12-11 das独立进程模式,实现业务请求进程级隔离
    08:48
  • 视频:
    12-12 理解RPC,初步了解微服务基础组件
    07:30
  • 视频:
    12-13 RPC普适模型,深入理解RPC核心组成
    12:19
  • 视频:
    12-14 应用gRPC,掌握RPC落地关键
    02:44
  • 视频:
    12-15 理解注册中心,初步了解微服务核心组件
    06:28
  • 视频:
    12-16 注册中心数据结构,深入理解注册中心原理
    10:00
  • 视频:
    12-17 应用Zookeeper,掌握注册中心落地关键
    13:06
  • 视频:
    12-18 理解消息队列,初步了解消息队列关键组件
    06:09
  • 视频:
    12-19 RocketMQ架构,深入理解RocketMQ原理
    09:11
  • 视频:
    12-20 应用RocketMQ,掌握MQ落地关键
    08:16

本章介绍:

基于 IM 微服务架构方案,IM 业务功能如何实现呢?本章延续 IM 微服务架构落地章节,以实际的互联网电商 IM 业务功能实现为基础,分别设计用户登录、状态同步、消息收发和漫游、全量联系人和增量联系人、系统消息与群消息、子母号等功能实现,并从中抽象出时间轮模型、分布式事务原子性方案、消息写扩散模型和用户子母号模型等,给出业务设计模型的典型场景应用。通过本章学习,你将深入掌握微服务架构设计下 IM 业务功能设计和实现中的关键问题,并深入理解业务设计模型的扩展应用。

第13章 微服务架构 IM 功能实现—学会业务设计模型应用
11 节|139分钟
展开
  • 视频:
    13-1 一张图,通览全章
    06:21
  • 视频:
    13-2 用户登录,串联微服务架构核心服务
    12:06
  • 视频:
    13-3 状态同步,信箱模型方案典型实现
    09:26
  • 视频:
    13-4 消息收发,电话模型方案典型实现(1)
    07:41
  • 视频:
    13-5 消息收发,电话模型方案典型实现(2)
    16:05
  • 视频:
    13-6 消息收发,电话模型方案典型实现(3)
    06:18
  • 视频:
    13-7 云消息,消息漫游方案典型实现
    06:39
  • 视频:
    13-8 联系人,全量和增量方案实现
    08:46
  • 视频:
    13-9 系统消息,事务原子性的典型应用
    22:33
  • 视频:
    13-10 群消息,写扩散模型方案的典型应用
    22:06
  • 视频:
    13-11 子母号,电商场景中toB的典型应用
    20:23
本课程已完结
适合人群
急需寻求突破的开发者
希望提升系统设计能力的工程师
技术储备
了解 Go 语言基本编程
熟悉 MySQL、Redis 基础应用
了解常用网络协议
环境参数
go 1.13+
redis 3.0
nginx 1.26.2
rocketmq 4.5.1
棕生
高级架构师
不为别的,只为提升面试通过率
尽管课程时间很长,
但没关系,我们有老师的陪伴,
还有同学之间互相鼓励,彼此帮助,
完成学习后,还能获得慕课网官方认证的证书。
立即购买
数据加载中...
《Go进阶 IM系统设计与落地,单体到微服务深度剖析》的真实评价
综合评分:分,共 人参与
篇幅原因,只展示最近100条评价

学习咨询

选课、学习遇到问题?

扫码添加指导老师 1V1 帮助你!

添加后老师会第一时间解决你的问题

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号