tomcat8.0.15+spring4.1.2的集群下共享WebSocketSession?

环境:nginx+Tomcat服务器 A B C
 

问题:如果用户 1 访问由服务器 A socket服务  ,用户2 由服务器 C socket服务  ,此时如果用户 1, 2 想通过  socket 对话 可以什么方案?(socket 集群由 nginx 分配)由于用户 1,2没法决定自己访问哪一台服务器,所以不可能实时同时访问一台服务器。

情况一:用户1,2进入系统时候,被nginx同时分配到了服务器8082。此时用户1想对用户2发送一信息,此请求又被分配到了服务器8083。那么服务器8083向8082发出请求,让8082来执行发送程序。

看一下效果图:

情况二:用户1,2进入系统时候,被nginx同时分配到了服务器8082及8083。此时用户1想对用户2发送一信息,此请求又被分配到了服务器8081。那么服务器8081向8082发出请求,让8082来执行发送程序。

看一下效果图:

情况三:用户1,2进入系统时候,被nginx同时分配到了服务器8083。此时用户1想对用户2发送一信息,此请求又被分配到了服务器8083。

看一下效果图:

集群跑了几天,目前没有用户反应有问题。。。应该

已解决。。。先暂时用一下这方案。。。如果用户、执行程序都在同一台服务器上直接发送就可以了,反之服务器间通讯实现发送。。。

原文地址:https://www.cnblogs.com/interdrp/p/4091056.html