专栏名称: 架构师之路
架构师之路,坚持撰写接地气的架构文章
目录
相关文章推荐
架构师之路  ·  关于即时通讯架构的一切! ·  昨天  
架构师之路  ·  如何1分钟实现一个分布式锁?(第26讲) ·  3 天前  
美团技术团队  ·  2024年美团机器人研究院学术年会议程公布 ·  3 天前  
高可用架构  ·  OpenAI ... ·  5 天前  
架构师之路  ·  加速MySQL主从同步,核心架构设计思路!( ... ·  1 周前  
51好读  ›  专栏  ›  架构师之路

关于即时通讯架构的一切!

架构师之路  · 公众号  · 架构  · 2024-12-21 21:20

主要观点总结

文章主要介绍了某专栏对于即时通讯架构的详细解析,包括从不同章节的具体内容、技术细节的讨论到订阅方式和福利等。

关键观点总结

关键观点1: 文章背景介绍

作者介绍自己职业生涯中在即时通讯领域的工作经历和沉淀,以及录制专栏《关于即时通讯架构的一切》的初衷和背景。

关键观点2: 专栏内容概述

专栏涵盖了即时通讯系统的各个方面,包括IM系统为何难、从简单的网络聊天室说起、匿名访客IM系统、IM系统协议栈设计、IM系统分层架构设计、核心业务流程设计与实现等。

关键观点3: 专栏形式与订阅方式

专栏以视频和讲解PPT的形式呈现,可以通过扫码订阅。订阅后有首页优惠,且可以看到群二维码,加入群聊进行交流。

关键观点4: 技术细节与福利

每一章节都有大量技术细节的讨论,包括文件传输、验证码、反作弊、移动优化等。订阅后可以学习到这些技术细节,并且享受优惠和加入群聊交流的机会。

关键观点5: 注意事项

订阅后务必加群交流,以便和其他人一起探讨和学习架构相关的知识。


正文

自己职业生涯前10年,都在做即时通讯。

口罩期期间,花了一年的时间,将自己10年即时通讯架构积累沉淀下来。

21年又花了半年的时间,录制了一个视频专栏《关于即时通讯架构的一切》。多年苦练的武功,算是对自己职业生涯前10年的一个交代

《关于即时通讯架构的一切》内容如何?
架构有很多相通的地方,高性能,高可用,扩展性,一致性,架构问题解决思路...... 一切都具象化融在了“即时通讯”的10章50个小结之中

第一章、IM系统为什么难

1. 什么是人们眼中的即时通讯

2. 什么是“即时”,什么是“通讯”

3. 即时通讯系统为什么难

    3.1 实时性难点

    3.2 推送性难点

    3.3 逻辑复杂性难点

    3.4 消息可达性难点

    3.5 状态同步难点

第二章、从简单的网络聊天室说起

1. 网络聊天室需求

2. 网络聊天室设计与实现

    2.1 接口设计

    2.2 分层架构

    2.3 数据库设计

    2.4 业务逻辑流程

3. 如何保证消息实时性

    3.1 消息轮询模式

    3.2 轮询实时性问题

    3.3 观察者模式

    3.4 comet技术

第三章、匿名访客IM系统

1. 匿名访客即时通讯系统需求

2. 匿名访客即时通讯系统设计与实现

    2.1用户的抽象与设计

    2.2匿名与隐含登陆

    2.3 HTTP1.1与伪长连接

    2.4 客服离线消息

    2.5 状态分发模块

    2.6 通知路由模块

3. 匿名系统如何实现

    3.1匿名子系统需求

    3.2 熟客识别

    3.3 安全会话标识串的设计

    3.4 匿名登录

    3.5 匿名离线消息

第四章、IM系统协议栈设计

1. 应用层协议设计

    1.1文本协议

    1.2 二进制协议

    1.3 流式XML

    1.4常用协议比较

2. 安全层协议设计

3. 传输层协议设计

第五章、IM系统分层架构设计

1. 架构设计需要考虑的问题

2. 即时通讯系统分层架构设计

    2.1 接入层entry子系统

    2.2 逻辑层logic子系统

    2.3 路由层router子系统

    2.4 存储层data子系统

3. 即时通讯系统分布式架构

    3.1 机房冗余策略

    3.2 水平拆分策略

    3.3 服务冗余策略

    3.4 负载均衡策略

    3.5 系统扩展策略

第六章、IM系统核心业务流程设计与实现(上)

1. 即时通讯系统协议报文设计

2. 登录业务:可能远比你想的复杂

3. 用户业务:一切的基础

4. 单人在线消息业务:即时通讯的精髓

5. 单人离线消息业务:离线可达性如何保证

第七章、IM系统核心业务流程设计与实现(中)

1. 好友业务:难在哪里

2. 好友状态业务:推还是拉

3. 群在线消息业务:为何限制群人数

4. 群离线消息业务:存一份还是多份

5. 群友状态业务:消息风暴问题

第八章、IM系统核心业务流程设计与实现(下)

1. 文件传输子系统

2. 验证码子系统

3. 反作弊子系统

4. 移动流量优化

5. 断线重连优化

第九章、从IM系统Passport看分布式架构设计

1. Passport系统需求

2. Passport系统分析

3. Passport分布式设计

    3.1 容错与冗余

    3.2 系统扩展性

    3.3 系统负载均衡

    3.4 系统部署

章、总结IM系统架构中的设计方法论


具体到每个章节,会聊些什么内容?

以第八章为例,第八章聊文件传输验证码反作弊移动优化,具体会解答这些问题:

关于文件传输

(1)小文件,能不能通过IM通道传输?
(2)大文件,“中转”方案存在什么弊端?
(3)文件和文字一起发,哪部分内容先收到?
(4)文件传输,发送方与接收方用“直连”方案么?
(5)最经典的文件传输,什么是“打洞”方案
(6)...

关于验证码
(1)验证码的图片,是提前生成的吗?
(2)验证码的设计,如何保障一次性,时效性,独占性,完整性
(3)如何攻破验证码系统?
(4)如何打破验证码内容与图片的映射关系
(5)如何防止OCR攻击,如何防止穷举攻击
(6...

关于反作弊
(1)如何进行黄反词过滤
(2)什么是trie树与DAT
(3)如何进行广告识别
(4)什么是局部敏感HASH
(5)如何进行行为过滤
(6...

关于IM移动优化
(1)移动IM如何优化?
(2)什么是IM session保持技术?
(3)什么是IM 快速重连技术?
(4)IM如何实现多点登录
(5)IM如何实现消息漫游
(6...

每一章都有大量技术细节的讨论,欢迎围观。


《关于即时通讯架构的一切》专栏是什么形式?
视频,讲解PPT。

如何订阅?

扫码订阅《关于即时通讯架构的一切》


有什么福利?
首页-400优惠券。务必领取后再订阅。

有什么注意事项?
订阅后能看到群二维码,务必加群交流欢迎加群一起玩架构。

阅读原文,欢迎加群