Netty+SpringBoot 开发即时通讯系统

课程介绍

Netty+SpringBoot 开发即时通讯系统
本课程使用Netty实现端对端通信,开发一款支持多端同时在线的即时通讯系统,采用私有通讯协议,与主流的SpringBoot完美搭配。学完后你可以掌握大型 IM 项目数据同步的原理,搞懂即时通讯完整开发流程并落地,并打造一款属于自己的即时通讯系统。

第1章 课程介绍与学习指南

本章主要对课程内容、课程特色、课程内容安排等做整体介绍,给用户在学习上提出指导性建议。

第2章 为什么要自研一套即时通讯系统?

本章节将介绍如何为应用加上即时通讯功能,有哪些途径。分别对开源(开源也有商业版和免费版),付费sdk,自研三种途径做对比,三种方式各有优劣势。学完本章可以对各种即时通讯的解决方案有深刻认识,在项目中遇到即时通讯选择时,可以选择最优解。…

第3章 基础数据开发-用户&关系&群组

本章节开发用户基础模块,通过腾讯云即时通讯官方文档、用户模块的api文档。分析我们的用户服务如何设计。参考腾讯云的设计来实现自己的模块。学完本章节后,可以对即时通讯、社交领域的数据库表设计有清晰的了解,技术是触类旁通的,学完以后对自身db设计能力有很大提升。…

第4章 BIO,NIO&Netty入门

本章节介绍BIO和NIO,通过代码的方式演示两者的线程模型,做出对比。通过Netty官网和开源项目中使用Netty的情况分别进行介绍。根据官方文档的案例上手写Netty程序。学完本章节后,可以掌握NIO和BIO概念,可以对Netty程序有初步的认识,可以实现简单的服务端与客户端的交互程序。…

第5章 Netty企业开发必须掌握的技能

本章节介绍Netty的进阶功能,包括:Netty编解码、Netty粘包拆包、Netty心跳机制,介绍Netty私有协议。最后会通过python作为客户端连接我们的Netty服务,演示私有协议及本阶段开发。学完本章节后可以掌握企业开发中Netty的高级特性,应对企业开发需求。…

第6章 IM开发核心 之构建TCP网关(上)

本章节主要开发TCP网关服务,网关服务开发采用轻量级,包括Socket、Websocket。yml配置文件启动,开发IM私有协议。学完本章节后可以使Netty实现自己的私有协议。

第7章 IM开发核心之构建TCP网关(下)

本章节主要开发IM业务,包括多端登录,心跳机制、消息收发、服务注册。通过RabbITMQ与业务服务交互。本章使用的中间件较多,如Redis,Zookeeper,RabbitMQ。学完本章节后可以快速上手Zookeeper,RabbitMQ,掌握市面上的APP踢人机制如何实现。学会如何使用私有消息进行通信。学懂主流负载均衡策略。…

第8章 打通业务服务器与IM服务器&多端同步

本章节开头对用户,好友,群组的变更和IM系统进行联动,介绍IM服务回调机制,通过腾讯云文档详细介绍需要哪些回调并实现,回调事件是IM系统保证拓展性的重中之重。本章节实现事件通知,将用户操作同步给自己的同步端,目前主流应用都是支持多端登录的,在这种场景下多端数据同步尤为重要。还会补充接口加密。学完本章节可以…

第9章 消息业务的流程之打通消息收发核心

本章节开始开发IM消息服务,构建单聊/群聊消息系统,包括消息分发,消息回包,消息存储。实现基础版本打通流程并演示。后面章节会介绍如何高性能的保证消息有序性、一致性做到消息不丢不漏不串。学完本章节可以掌握消息收发的主流程,分布式自增ID生成技术选型,能够准确定位在工作中遇到读扩散or写扩散时选择最优方案。…

第10章 消息业务的核心之消息可达性、一致性、幂等性、实时性

本章节会开始着手优化单聊和群聊,补充撤回功能,优化点包括如何保证消息不乱序,消息不丢失,提升消息处理效率,存储离线消息,解决消息重复发送等问题。该章节还会讲解TCP是如何保证消息不丢不漏不串。学完本章节可以掌握即时通讯系统的核心-如何保证消息可达性、一致性、有序性。…

第11章 揭秘QQ、微信数据同步的演进

本章节会着手资料同步的优化,让全量同步的操作改为增量同步。并使用APP端演示优化前后差距。学完本章节可以了解微信和QQ背后数据同步的思路和过程,可以上手优化自己系统的数据同步问题。

第12章 打造QQ在线状态功能之为你的应用增添色彩

本章节会讲解即时通讯中在线状态的开发,由于手机在线/离线的频率要远大于发消息,当APP切到后台,对于服务端来说也属于离线状态,而且每次在线/离线触达的用户数要比一般的群组大很多,群内如果有500个用户那么一个用户下线了,其他群成员如何感知?设计的不合理,可能系统90%的资源都会消耗在在线状态功能。本章节将揭晓…

第13章 IM拓展之IM能做的事还有很多

本章节将会介绍如何利用IM实现一些市面上应用常见的功能。学完本章节后可以掌握常见应用场景的解决方案。

第14章 系统对接&sdk讲解

本章节将从前端和后端系统讲解如何对接我们开发的即时通讯系统,会有web版sdk源码提供,使用typeScript编写,使用sdk的方式演示im的对接,上层app引入sdk无需关心任何的webSocket开发就能够开发即时通讯应用。

第15章 课程总结

本章主要对课程整体内容进行总结,帮助大家梳理课程的重、难点,确保学习效果。

私信站长,免费获取该资源
声明:本站所有资源收集于互联网,该资源作者与Binge办公不享有任何版权,如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
个人中心
购物车
优惠劵
有新私信 私信列表
搜索