许多在移动端的设备需要更好的实时网络连接在消息上。这些设备属于物联网设备,需要有一种协议去服务这种应用生态。
一种比较流行的做法就是使用无线广播的方式。
但是这种无线网络非常的耗电。
这种方式非常的耗费流量,且无法优化。
将所有的事件合并到一个会话中就可以保证有效的利用网络和无线电资源。
一个服务合并所有的事件,将这些事件分发给应用程序,等待他们的到来。
这就只需要一个回话,可以避免重复的开销。
来自W3C组织的push API 描述了如何使用来自web应用程序的统一推送服务。
document对象可以通过描述这样一个协议来扩展这个push API,这个协议可以用
作:
- 请求将推送的消息传递给用户代理
- 主动向已经订阅的部分推送消息
- 监视新的推送消息的事件
这个协议目前呢,主要提供订阅,管理,监控功能都由专有协议实现;这些都是足够了,当没有提供标准化的优势。
本文档有意不描述推送服务是如何实现的。
推送服务的发现是未来的目标,如有必要的话,用户代理需要为推送服务配置URL。
- 应用: 推送的发送者和最终发送消息的消费者。许多应用程序都有运行在服务器上的用户代理和其他组件。
- 应用服务器:运行在服务器上,请求传递推送消息。
- 推送消息订阅:在用户代理和推送服务之间建立与应用服务器共享。
- 推送消息订阅集:户代理和推送服务之间的将多个推送消息订阅收集到一个集合中
- 推送消息:应用服务器发送给用户的消息,通过推送服务代理。
- 推送消息的收据:发送消息传递确认将服务推送到应用服务器。



