我的 Java 应用程序需要从服务器获取数据(在 nginx 上运行 CakePHP)。有没有另一种方法可以在没有轮询服务器的情况下获取数据?目前我正在使用持久的 HTTP 连接并每隔 X 秒轮询一次服务器以查看是否有任何数据可用。
如果它是一个网络浏览器,我就可以使用网络套接字。我们在 Java 中有哪些选择?
最佳答案
如果您可以实现某种 Java 消息系统 (JMS),例如 ActiveMQ、RabbitMQ、WebsphereMQ 等,那么您就可以监听发布到客户端的消息。当然,您的 Java 应用程序仍然有效地轮询消息,但性能会比 HTTP 请求好得多。
Spring 框架在 JMS 实现上提供了一些出色的抽象,因此您不必担心管道问题。您可以使用简单的 JmsTemplate或使用 Spring Integration作为两个选项
关于java - 轮询服务器以在 Java 客户端中获取数据的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11149188/