好久不见,mqtt

公司新项目可能会用到推送,于是又重拾了有近1年时间没碰过的mqtt。而对于‘推送’本身,当初在选择实现的时候也是作了几番比较,现简要回顾一下。

一般此类的解决方案网上分为了几类(这里就忽略了pull):

  1. C2DM云端推送功能;
  2. MQTT协议实现Android推送功能;
  3. XMPP协议实现Android推送功能;
  4. 第三方推送平台。

对于第一种,C2DM需要依赖于Google官方提供的C2DM服务器,在国内这个基本不靠谱,放弃。MQTT是一个轻量级的消息发布/订阅协议,也是后来我准备采用的解决方案,实现它的客户端和服务器又丰富。接着是xmpp,该协议较复杂、冗余(基于XML)、费流量、费电,放弃。最后是第三方平台,确实,优点很明显(人家专门做这个,稳定先进),也符合了当前大环境下的web serivce的思想,把不是自己产品的核心功能,靠第三方完成,比如多说。但是,使用第三方会使用人家的服务器,感觉有些地方会受限,而且万一哪天就不免费了呢?

Read More