甲方需要设计并实现一个高并发、分布式、可扩展的企业级即时通讯系统,支持丰富的社交功能与实时消息交互。
构建高并发分布式 IM 系统,支持好友/群组实时通信,涵盖文字、图片、语音、表情等消息类型;实现完备社交功能:用户动态发布、点赞、评论,好友关系管理(添加/审批/列表),7天消息漫游与多端同步。提供用户管理(注册/登录/个人信息)、会话列表维护及系统通知推送(好友请求、入群邀请等),满足现代社交应用核心场景需求。
基于 Go 与 go-zero 微服务框架,项目架构:
API 网关:HTTP 接口,处理业务逻辑与 JWT 鉴权;
RPC 服务:核心数据存储(MySQL/Redis)与消息持久化;
Edge 服务:通过私有 TCP 协议管理长连接,解析消息并推送;
MQ 服务:消费 Kafka 消息队列调用 Edge 推送,削峰解耦。
依托 ETCD 服务发现、Kafka 异步通信,解决高并发连接与消息可靠性问题。
前端使用uniapp实现,一套代码多端复用。
本人主要负责设计消息推送架构,解决高并发和消息可靠性问题。