掌握IM系统架构与开发核心问题解决方案,一课吃透大型IM系统聊天技术。

课程介绍

本课程从0带领大家构建一套功能强大的企业级大型即时通讯(IM)系统。通过深入学习,能够掌握大型IM系统聊天服务的构建与核心业务功能的开发和特定场景下问题的解决方案,积累丰富的IM系统开发项目经验,轻松应对各种业务场景中聊天功能开发相关需求。

适合人群

1-3年开发经验的后端开发者

需要有一个高颜值的项目实战去面试或者进行毕业设计的

对即时通讯业务有学习需求的

技术储备

具备Java、MySql数据库基础

环境参数

操作系统 Windows或MacOS

开发环境 Idea 2023

数据库 MySql8

章节目录:

第1章 课程导学介绍 试看2 节 | 19分钟

本章主要对课程整体内容进行介绍,让大家对课程内容有全面的了解。

收起列表

视频:

1-1 课程整体介绍--导学 (14:19)

试看

视频:

1-2 项目效果演示 (03:55)

试看

第2章 为什么后端开发人员必须掌握即时通讯系统的开发?3 节 | 15分钟

本章主要讲解为什么后端开发人员必须掌握即时通讯系统的开发,以及在分布式架构下即时通讯系统要解决的问题有哪些,项目架构及技术选型详细讲解等。

收起列表

视频:

2-1 课程服务 (02:50)

视频:

2-2 即时通讯业务在分布式架构下的问题 (04:15)

视频:

2-3 项目架构与技术栈 (07:22)

第3章 【构建Docker环境】 手把手掌握开发环境搭建17 节 | 138分钟

本章先讲解基础环境说明,以及构建docker本地化环境与安装基础中间件等。

收起列表

视频:

3-1 开发环境搭建--本章概述 (02:09)

视频:

3-2 【基础】Open(Zulu&Oracle)JDK17与maven环境介绍 (11:18)

视频:

3-3 【基础】虚拟化与容器化技术架构剖析 (10:28)

视频:

3-4 【基础】安装DockerDesktop (05:44)

视频:

3-5 【拓展】Docker 架构与隔离机制 (12:07)

视频:

3-6 【拓展】内网互通原则(私有专有网络) (09:07)

视频:

3-7 【基础】数据库选型对比抉择 (07:22)

视频:

3-8 【基础】容器化安装MySQL8数据库 (17:18)

图文:

3-9 【文档】容器化安装MySQL8数据库

视频:

3-10 【基础】进入MySQL容器内部和数据库可视化工具 (12:39)

图文:

3-11 【文档】进入MySQL容器内部和数据库可视化工具

视频:

3-12 【实战】容器化安装Redis7 (09:30)

图文:

3-13 【文档】容器化安装Redis7

视频:

3-14 【实战】Redis可视化数据管理工具 (05:55)

视频:

3-15 【进阶】Redis持久化策略-RDB (17:39)

视频:

3-16 【进阶】Redis持久化策略-AOF (14:01)

视频:

3-17 本章小结 (02:36)

第4章 【搭建微服务基础架构】 实现微服务网关鉴权15 节 | 203分钟

本章主要讲解构建父子maven聚合项目,及搭建最新版微服务基础框架,构建微服务注册中心与构建微服务网关。

收起列表

视频:

4-1 微服务网关鉴权--本章概述 (03:21)

视频:

4-2 【基础】构建maven分层聚合项目 (20:59)

视频:

4-3 【基础】SpringBoot3与微服务版本依赖构建 (18:03)

视频:

4-4 【基础】搭建新版分布式微服务架构 (20:19)

视频:

4-5 【基础】idea设置微历史微服务列表 (06:09)

视频:

4-6 【实战】Docker安装Nacos注册中心 (12:34)

视频:

4-7 【实战】构建微服务并注册到Nacos (10:20)

视频:

4-8 【基础】构建SpringBoot多环境profile配置 (07:13)

视频:

4-9 【实战】微服务网关Gateway原理与构建 (14:18)

视频:

4-10 【实战】实现微服务网关Gateway的统一路由功能. (16:24)

视频:

4-11 【进阶】网关高并发流量防刷 - Redis整合与通用工具类. (16:34)

视频:

4-12 【进阶】网关高并发流量防刷 - 网关基本结构与异常返回. (21:48)

视频:

4-13 【进阶】网关高并发流量防刷 - 防刷逻辑落地. (17:59)

视频:

4-14 【进阶】网关高并发流量防刷 - 分布式动态参数配置 (11:54)

视频:

4-15 本章小结. (04:43)

第5章 【对接云短信与分布式会话】 开发通行证服务25 节 | 214分钟

本章主要讲解集成云短信功能,及限制用户的频繁发送短信,保护平台接口,实现短信登录功能,创建用户的分布式会话,结合RTOKEN来实现用户会话的校验与放行,对于首次登录的用户需要信息入库,退出登录清除token与会话等。...

收起列表

视频:

5-1 开发通行证服务--本章概述 (03:31)

视频:

5-2 【基础】手机短信验证码一键注册登录流程阐述 (05:17)

视频:

5-3 【基础】数据库用户表设计详述 (04:11)

视频:

5-4 【基础】腾讯云短信SDK申请与秘钥配置 (07:08)

视频:

5-5 【基础】微服务集成云短信功能 (13:15)

视频:

5-6 【实战】构建异步任务发送短信 (06:31)

视频:

5-7 【实战】通用服务抽取公用api (06:19)

视频:

5-8 【实战】集成Redis实现60秒用户限制发短信 (12:25)

视频:

5-9 【实战】使用拦截器限制60秒短信发送 (19:23)

视频:

5-10 【基础】使用Postman进行Api接口调用 (05:18)

视频:

5-11 【实战】Hbuilder使用H5运行前端项目 (08:59)

视频:

5-12 【实战】Hbuilder使用IOS模拟器运行前端项目 (04:33)

视频:

5-13 【实战】Hbuilder使用Android真机运行前端项目 (05:25)

视频:

5-14 【实战】Hbuilder使用Android模拟器运行前端项目 (04:33)

视频:

5-15 【实战】短信验证与用户注册1 - 基本需求分析 (11:13)

视频:

5-16 【实战】短信验证与用户注册2 - 逆向生成数据库对象 (18:27)

视频:

5-17 【实战】短信验证与用户注册3 - 详述数据源HikariCP (08:41)

视频:

5-18 【实战】短信验证与用户注册3 - 完成用户信息入库 (19:14)

视频:

5-19 【作业】优化注册接口业务 (03:25)

视频:

5-20 【实战】短信验证与用户登录 (05:05)

视频:

5-21 【实战】使用Hibernate-Validate进行参数校验 (12:49)

视频:

5-22 【实战】包装用户信息签发分布式令牌会话 (14:44)

视频:

5-23 【延伸】优化合并一键注册登录 (06:18)

视频:

5-24 【实战】用户退出登录清理分布式会话 (03:17)

视频:

5-25 本章小结 (03:56)

第6章 【掌握Redis分布式应用】 开发用户微服务与网关鉴权10 节 | 115分钟

本章主要讲解用户基础信息的维护,用户信息校验,合并处理用户信息优化等。

收起列表

视频:

6-1 【实战】实现用户基本信息修改 (12:23)

视频:

6-2 【实战】重新签发分布式会话 (16:54)

视频:

6-3 【实战】年度次数限制微信号修改 (07:24)

视频:

6-4 【进阶】AOP计算统计service业务执行时间 (18:32)

视频:

6-5 【进阶】StopWatch秒表时间的优雅统计 (09:02)

视频:

6-6 【进阶】服务状态与认证方案 (16:11)

视频:

6-7 【实战】Gateway过滤器校验token(1) - 路径匹配规则器 (17:00)

视频:

6-8 【实战】Gateway过滤器校验token(2) - 完成校验逻辑 (11:58)

视频:

6-9 本章小结 (03:01)

视频:

6-10 本章概述 (02:22)

第7章 【构建分布式文件服务器】 开发文件微服务16 节 | 178分钟

本章主要讲解对文件服务器的搭建与微服务整合,及文件资源的上传与管理等。

收起列表

视频:

7-1 本章概述(加片头) (02:44)

视频:

7-2 【实战】Springboot文件上传实现用户头像修改 (17:52)

视频:

7-3 【实战】SpringBoot 静态资源映射 (08:34)

视频:

7-4 【实战】网关为静态资源服务开放白名单 (04:17)

视频:

7-5 【实战】统一限制文件上传大小 (03:58)

视频:

7-6 【进阶】分布式文件存储方案的架构演变 (08:54)

视频:

7-7 【进阶】分布式存储技术选型 (07:54)

视频:

7-8 【实战】Docker 安装分布式对象存储中间件MinIO (16:09)

视频:

7-9 【实战】MinIO实现Java客户端文件上传 (14:43)

视频:

7-10 【实战】SpringBoot整合MinIO实现头像上传 (14:26)

视频:

7-11 【实战】OpenFeign实现微服务远程调用 (17:51)

视频:

7-12 【实战】生成微信隔个人二维码 (20:29)

视频:

7-13 【实战】OpenFeign微服务远程调用二维码上传 (14:23)

视频:

7-14 -1【实战】朋友圈封面设置与展示 (13:57)

视频:

7-15 -2【实战】朋友圈封面设置与展示 (06:32)

视频:

7-16 本章小结 (04:25)

第8章 【构建数据库多表关系】 实现好友业务与通讯录功能闭环16 节 | 167分钟

本章主要讲解添加微信好友与信息入库,以及好友列表与信息展示,拉黑与删除业务的解析与落地。

收起列表

视频:

8-1 本章概述 (04:32)

视频:

8-2 【基础】好友关系需求分析与数据表解析 (04:30)

视频:

8-3 【实战】微信号搜索精确匹配好友 (15:31)

视频:

8-4 【实战】扫描二维码添加好友 (06:56)

视频:

8-5 【基础】好友请求需求分析与数据表解析 (02:45)

视频:

8-6 【实战】发送添加好友请求 (15:46)

视频:

8-7 -1 【实战】分页查询历史好友请求记录列表 (18:30)

视频:

8-8 -2 【实战】分页查询历史好友请求记录列表 (18:43)

视频:

8-9 【实战】同意好友请求创建双方好友关系 (17:33)

视频:

8-10 【实战】查询好友关系显示用户备注 (08:33)

视频:

8-11 【实战】好友通讯录的渲染与显示 (17:28)

视频:

8-12 【基础】实现修改好友备注功能 (10:25)

视频:

8-13 【实战】好友黑名单与恢复好友功能实现 (08:32)

视频:

8-14 【实战】好友黑名单列表展示 (05:39)

视频:

8-15 【实战】删除好友功能实现 (05:12)

视频:

8-16 本章小结 (05:30)

第9章 【手把手开发】 开发朋友圈功能14 节 | 162分钟

本章主要讲解朋友圈的信息入库与查询,点赞与留言,未读消息设计与开发等。

收起列表

视频:

9-1 本章概述 (04:20)

视频:

9-2 【基础】朋友圈需求分析与数据表解析 (10:56)

视频:

9-3 【实战】发布图文朋友圈并入库 (09:49)

视频:

9-4 【实战】上传朋友圈图片并发表 (09:11)

视频:

9-5 【实战】查询我的朋友圈列表并展示 (20:47)

视频:

9-6 【补充】多表关联一并展示好友朋友圈 (05:19)

视频:

9-7 【实战】点赞或取消点赞朋友圈 (23:18)

视频:

9-8 【实战】查询朋友圈点赞的好友列表 (08:54)

视频:

9-9 【实战】查询并判断某人是否点赞朋友圈 (08:31)

视频:

9-10 【实战】点赞后刷新最新列表 (03:50)

视频:

9-11 【实战】发表朋友圈评论并入库 (17:14)

视频:

9-12 【实战】查询朋友圈的评论列表 (24:22)

视频:

9-13 【实战】删除朋友圈评论 (08:34)

视频:

9-14 【实战】朋友圈删除图文数据 (06:39)

第10章 【手把手构建Netty】 开发聊天服务websocket10 节 | 88分钟

本章主要讲解对Netty原理进行解析,构建Netty的基础聊天微服务,聊天消息的收发,心跳机制检测与主动断开,用户微信聊天历史记录存储,用户会话处理等。

收起列表

视频:

10-1 本章概述 (04:52)

视频:

10-2 【基础】Netty初见之概述 (08:04)

视频:

10-3 【基础】详述阻塞与非阻塞、同步与异步 (03:35)

视频:

10-4 【基础】什么是BIO与NIO (07:25)

视频:

10-5 【基础】BIO、NIO与AIO的区别与理解 (06:16)

视频:

10-6 【基础】Netty概念回顾理解 (04:11)

视频:

10-7 【基础】详述Netty三种线程模型 (07:57)

视频:

10-8 【实战】构建Netty的聊天服务器 (19:08)

视频:

10-9 【实战】设定channel的初始化器 (10:56)

视频:

10-10 【实战】编写HTTP自定义助手类 (15:04)

第11章 【分布式消息队列技术】 落地离线消息存储方案 17 节 | 160分钟

本章主要对聊天消息的存储架构原理进行解析,安装rabbitmq消息队列,集成消息队列,实现在线与离线消息架构等。

收起列表

视频:

11-1 本章概述 (04:27)

视频:

11-2 【基础】聊天消息异步存储架构剖析 (04:18)

视频:

11-3 【基础】聊天消息数据表分析 (03:16)

视频:

11-4 【基础】大白话阐述解耦场景需求 (05:41)

视频:

11-5 【基础】大白话告诉你什么是MQ- (05:32)

视频:

11-6 【基础】MQ选型与应用场景 (12:18)

视频:

11-7 【基础】RabbitMQ工作模型 (06:35)

视频:

11-8 【实战】Docker安装配置RabbitMQ (09:45)

图文:

11-9 【文档】Docker安装配置RabbitMQ

视频:

11-10 【实战】RabbitMQ管理控制台 (04:36)

视频:

11-11 【实战】RabbitMQ集成SpringBoot(上) - 异步解耦 (20:28)

视频:

11-12 【实战】RabbitMQ集成SpringBoot(下) - 监听消费 (10:02)

视频:

11-13 【实战】聊天信息数据异步解耦并保存入库 (27:50)

视频:

11-14 【实战】聊天信息的未读总数展示与清除 (17:49)

视频:

11-15 【实战】实现分页查询并展示聊天消息 (15:12)

视频:

11-16 【实战】语音消息的已读签收标记 (06:14)

视频:

11-17 本章小结 (05:27)

第12章 【Netty集群架构】 手把手构建Netty集群内容更新中

本章主要解析Netty集群架构,向Zookeeper注册Netty服务,手写负载均衡,用户会话与Netty的粘性,消息扩散多Netty节点,Netty集群架构优化的另外两种方案解析等。

第13章 【容器化部署】 手把手搭建线上云架构内容更新中

本章主要讲解购买服务器与环境安装,部署中间件,打包项目,构建项目的镜像与发布等。

第14章 课程总结内容更新中

本章主要对课程整体内容进行梳理、串讲,帮助大家梳理课程中重难点等。

本课程持续更新中

历史上的今天
06月
16
    抱歉,历史上的今天作者很懒,什么都没写!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。