java - 如何在我的 Java Web 应用程序中运行 websocket 客户端

标签 java jsp servlets web-applications websocket

我需要运行一个 Java websocket 客户端来监听来自另一个第三部分 websocket 服务器的一些更新。

客户端需要作为 Java Web 应用程序的一部分进行部署。

要求客户端必须持续监听更新。

执行此操作的正确方法是什么?

我正在考虑从 servlet 调用上述 java 代码。推荐吗?

编辑:我有 websocket 的代码(我正在使用 Tyrus),但我对将其链接到我的 web 应用程序的正确方法感到困惑。即如何保证websocket持续运行。

最佳答案

我会把它作为一个单独的类。如果您想在应用程序运行时连接并持续监听,您可能需要在应用程序启动时启动的单独线程中运行它。

线程和并发是一个相当深的兔子洞的开始,但类似于 ThreadPoolExecutor使用单个线程可能会起作用。

从那里开始,如果您正在运行嵌入的 Jetty,请将执行器逻辑粘贴在您的主方法中;如果您将其作为 .war 运行,则必须将其配置为在 Web 应用程序启动时运行。

关于java - 如何在我的 Java Web 应用程序中运行 websocket 客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25193278/

相关文章:

java - 无法在 Tomcat 8 中使用 EL 访问 JSP 中的静态字段

java - 如何获取特定的请求属性?

java - JAVA/C++ 中尾随字符的使用

java - 将属性设置到 JSP PageContext 中,以便在过滤器中的 EL 中使用

java - DispatcherServler 不工作

java - spring中的命令对象

java - 带有JDK11的Kubernetes中的Spring Boot随机 "SSLException: Connection reset"

java - Mongodb通过java中的嵌套字段搜索

java - Gluon Mobile 项目不适用于 gradle 6

java - 在 Tomcat 中未检测到更改服务器设置和添加新文件