java - 自动检查 Web 应用程序的更新

标签 java performance web-applications primefaces notifications

我正在开发一个 Web 应用程序,用户可以在其中进行交互以及有关这些交互或系统管理员更改等的通知。

我的服务器是在 Java 上实现的,对于 GUI,我使用 JSF(PrimeFaces 库)。

我的疑问是: 客户端始终要求服务器获取新通知的最佳方式是什么?我的意思是,就像在 StackExchange 或 Facebook 中一样,如果我正在写问题或更新状态或做其他任何事情,我不需要每次我想知道我的新通知时都单击通知按钮,我的客户应用程序只是始终检查这些更新(通过我不知道的方法)。

我认为可以做到这一点的方法是通过拥有一个无限持续时间的函数(在线程或类似的东西上),通过调用服务器通知服务(例如)并显示它们,每分钟向服务器询问这些通知给用户。明显的问题是,我认为这不是一个优化的方法,必须有更好的方法来做到这一点。

如果有人知道 Facebook(StackExchange、Twitter 或任何处理用户通知的系统)使用的方法并尝试解释它,那就太好了。

非常感谢。

最佳答案

您所描述的是ajax或http长池。这是消耗资源的。真正的异步实现很可能要好得多。您正在查看 websocket

关于java - 自动检查 Web 应用程序的更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16093208/

相关文章:

java - ignite 不会随 spring-boot 2.0.5 启动 - h2 属性 NESTED_JOINS 不存在

java - 独立 Java 应用程序是否有 "best"或最流行的数据库?

performance - 为什么Enum.map比Elixir中的Enum.count更有效?

MYSQL:如何在不查询整个表的情况下获取过去X小时内插入的行

java - 无法从 Tomcat 应用程序中的挂载点下载文件

java - 当我使用选项卡时 getSelectionModel 无法打开

java - Spring中的循环依赖

用于标准偏差的 python c 扩展

c# - 页面退出时执行操作

ASP.Net 如何在没有用户第一次请求服务器的情况下自动启动应用程序?