0

目前我们有一个 Applet,它通过 FTP、Sockets 和 HTTP 消息与我们的硬件和服务器进行交互。有人问我是否可以放弃小程序,直接使用显示动态网页和 JavaScript 的浏览器。我不相信这是可能的,因为据我了解,浏览器只能显示对其发起的请求的响应,而我们的应用程序需要显示它从硬件获取的数据,这些数据仅在其传感器触发时发送。

我曾想过使用 AJAX 定期轮询硬件,但我相信同源安全限制会阻止我轮询具有不同地址的不同硬件设备。我可以通过让各种硬件设备将所有更新发送到服务器来解决此问题,但这将迫使我们对当前配置方式进行重大更改。还有一个性能问题——它是一个全国性的应用程序,每天有数百台设备产生数百万个事件。我必须能够在 3 秒内做出响应,因此我必须非常频繁地(1 秒或更短)轮询硬件以保持该性能水平。

那么我对 Web 应用程序的理解是否正确?

浏览器有没有办法显示来自 多个地址的信息?

4

1 回答 1

1

有可能的。首先,您是对的,浏览器无法使用 AJAX 直接连接到其他服务器。如果这些其他服务器实际上是一些硬件设备,我会称之为优势。您需要一台服务器来接收所有流量。

然而,在现代浏览器和服务器中,您可以使用和其他技术将数据从服务器推送到客户端。基本上,您在客户端上保持一个开放的 HTTP 连接,只要服务器有一些数据,它就会立即发送,没有任何延迟。与每隔几秒轮询一次相比,这是一项重大改进——您避免了延迟和系统上的额外负载。

在 Java 领域,您可以使用来救援。

于 2012-07-09T18:12:06.363 回答