我们目前正在开发一个服务器,客户端请求对特定数据元素的更改感兴趣,当数据发生变化时,服务器将数据推送回客户端。在工作中有激烈的辩论,关于客户端是否应该轮询这些数据,这是更好的方法还是不是。
从性能、可伸缩性和网络负载等方面考虑,在近实时环境下数据传输的理想方法是什么?
更新:这里有一个链接(Link),可以提供一些关于UI更新的思路。
从性能、可伸缩性和网络负载等方面考虑,在近实时环境下数据传输的理想方法是什么?
更新:这里有一个链接(Link),可以提供一些关于UI更新的思路。
可能没有适用于每种情况的理想方法,但“推送”通常更好并且更常用。它允许优化服务器缓存和数据传输,从而提高性能和可扩展性,并通过避免客户端请求和空响应来减少网络流量。对于服务器以自己的节奏运行并在准备好数据时向客户端提供数据是重要的优势。
行业标准 - 如OPC、GID - 支持两种方式。服务器将更新推送到订阅的客户端,但客户端可以拉取一些很少使用的数据而不必担心订阅问题。
客户端有什么?许多防火墙允许出站请求,但会阻止入站请求。换句话说,如果你要跨越互联网,除非你发送电子邮件,否则拉取可能是你唯一的选择。