应用范围
架构
-
接入服务的主要是为客户端提供消息收发的出入口,而业务处理服务主要是处理各种聊天消息的业务逻辑
-
在很多基于私有通信协议的 IM 系统实现中,接入服务还提供协议的编解码工作
- 编解码实际主要是为了节省网络流量,系统会针对传输的内容进行紧凑的编码(比如 Protobuf)
-
为什么接入服务和业务处理服务要独立拆分呢?
- 接入服务作为消息收发的出入口,必须是一个高可用的服务
- 而业务处理服务由于随着产品需求迭代,变更非常频繁
- 如果消息收发接入和业务逻辑处理都在一起,势必会让接入模块随着业务逻辑的变更上线,而频繁起停,导致已通过网络接入的客户端连接经常性地断连、重置、重连
- 连接层的不稳定性会导致消息下推不及时、消息发送流畅性差&#x
- 接入服务作为消息收发的出入口,必须是一个高可用的服务