-
MsgGO是一款基于Golang开发的分布式即时通讯系统
资源介绍
短信
Golang即时通讯系统基于golang的分布式百万级即时通讯系统
需求分析:
发送/接收
实现群聊
高并发=单机+分布式+弹性扩容
需求细分
实现简单功能文字通讯
资源标准化编码
资源采集并标准化,转换为content / url
资源编码,最终目标拼接一个json消息体
消息体的可扩展性
兼容基础媒介入图片文字语音(URL / PIC / CONTENT / NUM)
能承接大量新业务,扩展不能对现有业务产生影响
红包/打卡/签到等本质是消息内容不一样
群聊的特殊需求
基础功能无区别
1条消息多个参与群聊的终端及时接收到
服务器流量计算
服务器负载分析
发送图片512K
100人同时在线接收512kb * 100 = 50M
解决分析
使用基准
提供资源服务并发能力使用云服务(qos / alioss)
使用压缩消息体,发送文件路径而不是整个文件
高并发
单机并发性能最优
海量