手机推送服务设计,在各个手机端应用都需要一定的云控制能力,可以在某些情况下云端发送各种数据或者命令到手机端,例如发送一个强制升级的命令或者手机app配置变换的数据包,以及发送一个信息给特定人群(某个地区)。
请设计一个以长连接为主的云端控制服务,为了聚焦主要问题,可以忽略掉手机网络(例如:2g网络),手机终端等因素,用户登录的要求。
服务需要承担定向,定量的推送需求,在设计中要尽量高的吞吐能力和容错能力。
需要完成:
a)基本的模块视图
b)链接管理主要设计思路,单台机器承担更多链接,但是链接多了后管理链接(链接中断,链接查找)都会出现性能瓶颈,请尝试给出思路。
c)尝试给出提高容错能力(避免因为某台物理机器或者某个机器上的程序挂掉,导致整个系统不可用)的思路。