java - Spring websocket多个tomcat服务器

标签 java spring websocket

我有一个应用程序,它使用许多 tomcat。它还使用websockets。 每个 tomcat 都会在 userSessionRegistry 中保存一些有关已连接用户的信息。 但是,如果用户来到 tomcat A,其他 tomcat B、C、D .. 不知道连接到 tomcat A 的用户及其唯一的队列名称。当我尝试做这样的事情时:

messageTemplate.converAndSendToUser(userNameConnectedToTomcatA, ...) 

来自 tomacats B、C、D 的邮件不会发送。

有什么想法吗?

最佳答案

这可以通过实现 UserSessionRegistry 来实现。请参阅DefaultUserDestinationResolver,它非常简单,并将数据保存在内存中。可以用Redis之类的东西代替,以实现分布式。

这是我一直想要实现的目标。您可以在 JIRA 中打开请求以便我们跟踪吗?另外,如果您愿意尝试这样做,我会帮助您。

关于java - Spring websocket多个tomcat服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22371560/

相关文章:

Java Netbeans - 如何在 Jpanel 内的 Jpanel 上绘图? (面板构造函数)

具有复杂类型定义的 Java Collections.synchronizedMap()

java - Spring Websocket STOMP : send RECEIPT frames

java - java bean 创建、hibernate 和 spa 的问题

javascript - meteor 如何处理大量对较大文档的订阅?

java - getRemote().sendString(msg, new WriteCallback() {..}) 稳定吗?

java - 在 TIMESTAMP 中保存 LocalDateTime 时出错

java - 从 Spring Boot 1.5.4 升级到 2.0.0 的问题

java - Hibernate不设置外键

java - 无法连接到 websocket 服务器(spring)