摘要:
前言gopush-cluster是一套golang开发的实时消息推送集群,主要分享一下开发这套系统的想法和思路。架构主要分为三个模块来开发,comet/web/message。comet主要负责消息排队、消息推送以及和客户端的连接维护;整套系统依据是消息ID顺序原则获取消息(客户端本地获取最大的消息是1,那么之后获取的消息就是大于1的,获取离线消息的时候也要从上次最大消息ID来获取),因此消息推送以后需要在comet中排队然后发起RPC给message实现存储。message主要负责消息的存储和读写;接受来自comet模块的消息进行持久化,或者接受web模块的读取消息请求获取离线消息。mess 阅读全文