我有一个应用程序,它使用许多 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/