本项目是一个消息系统的基础框架,对一些基础组件进行抽象, 提供一些基础工具以供其他项目共用, 并考虑方便的扩展各种常见场景, 如: 即时通讯, 实时订阅等,
项目中也有一些常见场景的实现, 例如 gate/gateway
实现了一个长连接消息网关.
几个较为重要的模块
gate
: 长连接消息网关抽象, 所有消息的入口, 提供管理网关中客户端的接口, 如设置 id, 退出, 推送消息等.messaging
: 消息路由层, 处理来自gate
的消息, 并根据消息类型进行转发给相应的消息处理器.subscription
: 提供适用于群聊, 实时订阅等场景的接口.
公共消息的定义
messages
包提供了客户端和服务端通讯的消息实体, 类型及消息编解码器. GlideMessage
为最基本的公共消息实体.
实例项目
- 即时通讯服务: glide-im/im-service