美文网首页直播网络
从0到1构建push服务 — 整体架构设计(一)

从0到1构建push服务 — 整体架构设计(一)

作者: 村长爱技术 | 来源:发表于2016-08-12 17:18 被阅读74次

    推送服务是一个老生常谈的问题了,目前业界也有很多解决方案,但如何从0到1构建一个高效、稳定的push服务呢,我在这里跟大家分享一下整个过程。

    整体架构图

    Paste_Image.png

    时序图

    时序图 (1).png

    1. 客户端首先通过Router Serv获取可用的Conn Serv IP和Port。
      2. 根据第1步获取的IP和Port建立长连接,建立好以后发送客户端数据用于注册(注册的意思就是要标识连接跟客户端的对照关系,比如帐号+终端类型等)。
      3. 后台通过手动或者API的方式写入消息到MQ中,Push Serv通过轮训或者订阅的方式获取MQ消息,并通过查询客户端和机器IP的对照关系,选择推送到特定的Conn Serv。
      4. Conn Serv获取到要推送的消息,传递给对应的客户端

    技术难点

    • 自定义协议
    • 服务高性能和高可用
    • Conn serv多端口监听和转发
    • 客户端和描述符对应关系存储
    • 数据统计(送达率,失败率等)

    接下来会根据以上几点进行详细介绍……

    相关文章

      网友评论

        本文标题:从0到1构建push服务 — 整体架构设计(一)

        本文链接:https://www.haomeiwen.com/subject/ddtesttx.html