深度剖析IM消息乱序的根本原因及优化方法
本文深度剖析即时通讯IM消息乱序的问题,梳理IM客户端时间戳不可信、多端并发、群消息扇出重试三大核心陷阱,拆解微信、钉钉、企业微信的时序设计方案,并从锚点设计、多端去交错、幂等兜底、可观测性等维度,给出IM项目消息时序性保证的落地优化策略。
一套亿级用户的IM架构设计(上篇):整体架构、服务拆分等
1、引言经历过稍有些规模的IM系统开发的同行们都有体会,要想实现大规模并发IM(比如亿级用户和数十亿日消息量这样的规模),在架构设计上需要一些额外的考虑,尤其是要解决用户高并发、服务高可用,架构和实现细节上都需要不短时间的打磨。我在过往的工作经历里,亲手设计和实现了一套亿级用户量的IM,平台上线并经过6年多的验证,稳定性和可用性被验证完全达到预期。这套IM系统,从上线至今已6年有余,本人也已经离职
IM聊天不掉线?生产级WebSocket断线重连、心跳保活实战
本文将给出一套生产级Web端即时通信方案,包括心跳检测保活 + 指数退避重连,代码直接能跑。
移动端弱网优化技术实践
本文将以爱奇艺的iOS端APP为例,分享对移动网络请求成功率优化方面的技术实践之路。
IM全文检索技术(五):vivo敏感词匹配系统的技术实践
本文将从算法选型入手,结合两个实际场景来介绍谛听系统的敏感词匹配算法。包括底层算法选型思路和两种实际场景下提升敏感词精准度、降低漏杀率的方案。
得物从0到1自研客服IM系统的技术实践之路
本篇文章将基于工程实践,分享我们从0到1自研一套客服IM系统时在各种关键技术点上的设计思路和实践方法。
Nginx生产级WebSocket实时长连接负载均衡,一文搞定
本文从基础配置、生产配置、Docker / K8s、安全、排障、性能调优,系统性讲清 WebSocket 在 Nginx 中的正确打开方式。
即时通讯IM离线消息该怎么存?全面盘点主流存储方案
离线消息是IM系统的核心能力,当用户不在线时,消息必须可靠存储,待用户上线后完整推送。本文将对比主流的离线消息存储方案,帮你找到最适合业务场景的架构。
都HTML5了,Web端即时通讯技术到底该用什么?一文即懂!
本文分享的是 Web 端最常用即时通讯技术(包括 WebSocket、SSE、WebRTC、轮询等)的原理、优缺点与适用场景等,以及生产环境下的高并发场景下的进阶实践。
技术干货:闲鱼亿级IM消息系统的架构演进之路
本文分享的是闲鱼即时消息系统架构从零开始的技术变迁之路,以期更多的同行们在此基础上汲取经验,得到有价值的启发。
基于开源MobileIMSDK框架,即时通讯IM产品RainbowChat v12.1发布
此版本新增了短信验证码的注册和登录功能,解决了Android 16手机上发送文件失败等问题。
IM千人群聊该不该用消息写扩散?详细算算成本账!
本文将为你详解 IM 群聊消息的写扩散技术原理以及写扩散过程中的服务端详细性能成本,同时对比了市面上IM大厂的技术方案,给出分规模架构选型与以及性能优化策略等。
直播系统聊天技术(十):基于实时消息总线的活动系统架构设计
本文分享的是网易云音乐技术团队基于实时消息总线技术,解决了直播活动系统的模块灵活组合、消息治理与异步履约等问题,希望能给你带来启发。
轻量级Web端IM即时通讯框架MobileIMSDK-Web,基于Socket.io库
MobileIMSDK-Web是一套Web端即时通讯框架,超轻量级、极少依赖,高度提炼、简单易用。
详解AI大模型实时通信为什么选SSE,而不是WebSocket和WebRTC
本文将为读者剖析 SSE、WebSocket、WebRTC 的技术原理,并对比三者在性能、安全与架构方面的优劣势,详解了AI大模型(LLM)在实时通信协议方面的综合技术考量以及最终选择。
微信IM聊天消息序列号生成算法技术原理
微信消息序列号实际上是解决消息的唯一性、顺序性问题,可以将一个技术点分解成两个:即将原先每条消息一个自增且唯一的消息ID分拆成两个关键属性——消息ID(msgId)和消息序列号(seqId)。消息ID只要保证唯一性而不需要兼顾顺序性(比如直接用UUID)、消息序列号只要保证顺序性而不需要兼顾唯一性,这样的技术分解就能很好的解决原本一个消息ID既要保证唯一性又要保证顺序性的难题。
全面揭秘亿级IM即时通讯消息的可靠投递机制
本文根据融云亿级IM消息系统的技术实践,总结了分布式IM消息的可靠投递机制,希望能为你的IM开发和知识学习起到抛砖引玉的作用。
socket长连接在手游场景下的技术实践
本文介绍了37手游基于B站goim框架自研长连接系统的实践。系统采用分层设计,支持多协议和发布/订阅机制,用于直播弹幕、实时推送等场景,实现了高性能与业务适配。
基于开源MobileIMSDK框架,即时通讯IM产品RainbowChat v12.0发布
RainbowChat 是一套基于 MobileIMSDK 开源通信框架的产品级移动端IM系统。可能是市面上开放源码的,唯一一款同时支持TCP、UDP、WebSocket三种网络通信协议的IM产品。
社交场景下的统一即时通讯im消息流交互层模块化技术实践
这些IM场景,在消息流的展示形式上是极为相似的,同时每个业务又有着自己特殊的交互需求。基于此,我们对IM消息流能力做了标准化的构建,来减少IM功能的业务接入成本;同时也是为了统一各个业务的技术方案,减少跨业务开发的理解和维护成本。