集群配置中的共享内存java

集群配置中的共享内存java,java,spring-boot,websphere,Java,Spring Boot,Websphere,我的系统是与messenger集成的聊天机器人,我将升级到群集而不是一台机器,因此我将面临一个问题,当用户开始对话时,将在机器内存中创建一条记录,任何进一步的消息都需要转发到同一台机器,因为机器之间没有共享内存。我可以创建要在计算机之间共享的数据库,但由于性能原因,此解决方案不可接受。 有什么建议吗?我使用ibmwebsphereserver。 我的问题是,我可以在机器之间创建共享内存吗?作为共享性能内存选项,您可以使用Redis/Memcache。可能有一点网络延迟。但是,如果服务器与Redi

我的系统是与messenger集成的聊天机器人,我将升级到群集而不是一台机器,因此我将面临一个问题,当用户开始对话时,将在机器内存中创建一条记录,任何进一步的消息都需要转发到同一台机器,因为机器之间没有共享内存。我可以创建要在计算机之间共享的数据库,但由于性能原因,此解决方案不可接受。 有什么建议吗?我使用ibmwebsphereserver。
我的问题是,我可以在机器之间创建共享内存吗?

作为共享性能内存选项,您可以使用
Redis
/
Memcache
。可能有一点网络延迟。但是,如果服务器与Redis的连接是持续的,那么网络延迟可以忽略不计


如果您想将数据与共享内存状态一起保存在服务器本地内存中,您可以使用发布Sub选择
Redis
,因此在此设置中,服务器中的每个实例都将在本地维护数据,并将其发布到共享
Redis
服务器,所有服务器实例也将订阅到
Redis
上所需的频道,以便它们可以与其他服务器实时同步数据。这样,您就不必在性能上做出妥协,而且还可以确保每个服务器实例都几乎实时地拥有最新的数据?您不能真正共享内存,但有许多分布式内存缓存/数据库/您可以使用的任何东西。Redis是一个很受欢迎的选择,可能符合这一要求。编辑:它当然可以从Java中使用。您知道Java中的dyncache和ibm websphere›cache›sample dynacache/TestDistributedMap.Java在master·kelapure/dynacache·Github吗谢谢,但您知道Java中的ibm webshpere分布式内存吗。