Fork me on GitHub

当前推送方案整理

现有市场推送方案

特点 GCM XMPP MQTT HTTP轮询 第三方
简介 Google推出的云消息服务,即第二代的C2DM。 基于XML协议的通讯协议,前身是Jabber,目前已由IETF国际标准化组织完成了标准化工作。 轻量级的、基于代理的“发布/订阅”模式的消息传输协议。 定时向HTTP服务端接口(Web Service API)获取最新消息。 极光推送、小米推送、华为推送、友盟推送、个推、信鸽、百度云推送
优点 Google提供的服务、原生、简单,无需实现和部署服务端。 协议成熟、强大、可扩展性强、目前主要应用于许多聊天系统中,且已有开源的Java版的开发实例androidpn。 协议简洁、小巧、可扩展性强、省流量、省电,目前已经应用到企业领域参考,且已有C++版的服务端组件rsmb。 实现简单、可控性强,部署硬件成本低。 实现简单、部署硬件成本低。
缺点 Android版本限制(必须大于2.2版本),该服务在国内不够稳定、需要用户绑定Google帐号,受限于Google。 协议较复杂、冗余(基于XML)、费流量、费电,部署硬件成本高。 不够成熟、实现较复杂、服务端组件rsmb不开源,部署硬件成本较高。 实时性差、需要Android进程保活。 需要Android进程保活

国内现有的推送

特点 极光 友盟 小米推送 华为推送 百度云推送 信鸽 个推
优点 部分收费 免费 免费 免费 免费 免费 部分收费
客户端 Android、IOS Android、IOS Android、IOS Android、IOS Android、IOS Android、IOS Android、IOS
服务端 Java、C#、Go Java Java Java Java、PHP Java、C#、Go Java
推送内容 消息、通知、富媒体 消息、通知 消息、通知 消息、通知 消息、通知、富媒体 消息、通知 消息、通知
备注 2万条/秒(共享 可以集成小米和华为推送 针对小米系统更好 有华为服务推送效率比较高 腾讯信鸽(可以支持华为、小米、魅族) 20万条/秒(共享)

备注

移动端

  • 移动端需要考虑的是进程保活
  • 消息接受的形式
  • 消息的到达率

服务端

  • 消息推送的方式
  • 消息的到达率
  • 消息的消费形式
posted @ 2021-06-13 15:37  KevinAt2022  阅读(117)  评论(0)    收藏  举报