1. 学在腾讯:简而美的微信后台架构

    注:公司分享讲座的一点笔记,不保证准确性。

    问题

    极致的业务特性

    • 流畅的消息收发
    • 及时的通知
    • 省电
    • 省流量
    • 瘦客户端

    困难的后台-终端同步

    • 同步多样数据:账户信息、通讯录、消息、朋友圈等
    • 及时通知与同步
    • 移动网络下的可靠同步
    • 省流量与电量

    方案

    极简的同步协议

    • 后台与终端只需要沟通一个数字,后台即可知道终端缺失的所有数据。
    • 变更序列号/版本号:
      • 后台对用户数据的每项变更,都赋予一个单调递增的序列号,即用户的每项数据都有一个全局递增序列号。
      • 后台每次给终端发送数据都会带上所发送的所有数据的最大序列号。
      • 终端每次请求数据时都会带上已经接受到的最大序列号。

    高效的通知机制

    • ios Apple Push Network Service
    • Android等-长连接
    • GPRS/EDGE信令风暴优化
    • 自适应心跳间隔调节

    三层后台架构

    Arch of weixin backend

    统一的RPC框架

    • 根据ProtocolBuffer定义生成服务器框架和客户端
      • 服务器:开发人员填充接口实现
      • 客户端: 应用方本地调用客户端提供的接口函数
    • 屏蔽网络细节
      • 支持基于TCP/UDP的网络调用 …
    Tagged as : 腾讯 微信 架构

Page 1 / 1