如何为产品添加实时功能并构建实时API

如何为产品添加实时功能并构建实时API

镜像API驱动的应用程序的兴起,实时正在成为现代应用程序开发中一种新兴的,无所不在的力量。它为即时消息,实时体育源,地理定位,大数据和社交馈送提供动力。但是,什么是实时,它究竟意味着什么?什么类型的软件和技术为这个行业提供动力?让我们深入研究它。

什么是实时的?实时可以在更相对的时间意义上定义。这可能意味着A的变化与B的变化同步。或者,它可能意味着A的变化会立即触发B的变化。或者......这可能意味着A告诉B某些事情发生了变化,但B没有做任何事情。或者......这是否意味着A告诉每个人一些变化,但不关心谁在听?让我们深入挖掘一下。实时并不一定意味着某些东西会立即更新(事实上,“瞬间”没有单一的定义)。

在数据推送模型中,数据被推送到用户的设备而不是由用户拉出(请求)。例如,现代推送电子邮件允许用户无需手动检查即可接收电子邮件。同样,我们可以更连续地检查数据推送,从而持续广播数据。有权访问特定频道或频率的任何人都可以接收该数据并决定如何处理该数据。此外,目前有几种方法可以实现数据推送/流式传输:HTTP流媒体

HTTP流式传输为即时和连续数据推送提供了长期连接。您可以熟悉HTTP与WebSockets的性能。客户端向服务器发送请求,服务器将响应打开无限长度。此连接将保持打开状态,直到客户端关闭它或发生服务器端方事件。如果没有要推送的新数据,应用程序将发送一系列保持活动的滴答,以便连接不会关闭。WebSockets

WebSockets提供了一个长期连接,用于在客户端和服务器之间交换消息。消息可以在任一方向上流动以进行全双工通信。这种双向连接是通过WebSocket握手建立的。就像在HTTPStreaming和HTTPLong-Polling中一样,客户端首先向服务器发送常规HTTP请求。如果服务器同意连接,则HTTP连接将替换为WebSocket连接。网络挂接

Webhooks是在服务器之间发送数据的简单方法。不需要长期连接。当有数据要推送时,发送方向接收方发出HTTP请求。WebHook注册或“挂钩”回调URL,并在事件发生时随时通知您。您事先注册此URL,并且当事件发生时,服务器将带有事件对象的HTTPPOST请求发送到回调URL。此事件对象包含将推送到回调URL的新数据。如果要接收有关某些主题的通知,可以使用WebHook。

HTTP长轮询为即时数据推送提供了长期连接。它是最简单的消费机制,也是最容易使用的机制。该技术为即时数据推送提供了长期连接。服务器保持请求打开,直到出现新数据或超时。大多数在30到120秒后发送超时,这取决于API的设置方式。在客户端收到响应(无论是来自新数据还是超时)后,客户端将发送另一个请求,并且会不断重复此请求。推动数据难吗?是的,特别是在规模上(例如,同时推动对数百万部手机的更新)。

这些系统还在其基础架构产品之上提供了更加精心构建的平台/软件管理工具。例如,领先的提供商具有内置配置工具,如访问控制,事件委托,调试工具和通道配置。RealtimeAppIaaS的优点速度-通常明确设计用于向最终用户设备(包括智能手机,平板电脑,浏览器和笔记本电脑)提供低延迟的数据。多个SDK,便于集成。使用全球分布的实时数据传输平台。多协议适配器。在生产环境中经过良好测试。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181002A01T9V00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券