前言
首先讲讲IM(即时通讯)技术可以用来做什么:
- 聊天:qq、微信
- 直播:斗鱼直播、抖音
- 实时位置共享、游戏多人互动等等
可以说几乎所有高实时性的应用场景都需要用到IM技术。
关于即时通讯架构的相关视频讲解:qq微信背后的即时通讯技术细节,方案选择
C/C++Linux后台服务器开发免费学习地址:C/C++Linux服务器开发高级架构师/Linux后台架构师
本篇将带大家从零开始搭建一个轻量级的IM服务端,麻雀虽小,五脏俱全,我们搭建的IM服务端实现以下功能:
- 一对一的文本消息、文件消息通信
- 每个消息有“已发送”/“已送达”/“已读”回执
- 存储离线消息
- 支持用户登录,好友关系等基本功能。
- 能够方便地水平扩展
这个项目涵盖了很多后端必备知识:
- rpc通信
- 数据库
- 缓存
- 消息队列
- 分布式、高并发的架构设计
- docker部署
消息通信
文本消息
我们先从最简单的特性开始实现:一个普通消息的发送

本文介绍了如何从零开始搭建一个包含文本消息、回执功能、用户状态管理、消息转发的轻量级IM服务端。涉及到的知识点包括Linux后台开发、RPC通信、数据库、缓存、消息队列等。通过水平扩展和用户状态管理实现高并发和实时性,使用Redis存储用户连接状态,MySQL保存离线消息,并提供了消息的回执机制。
最低0.47元/天 解锁文章
2879

被折叠的 条评论
为什么被折叠?



