Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java WebSphere跨集群中的所有节点传播更改_Java_Websphere - Fatal编程技术网

Java WebSphere跨集群中的所有节点传播更改

Java WebSphere跨集群中的所有节点传播更改,java,websphere,Java,Websphere,我对目前正在开发的产品有问题。本质上,在服务器启动时从数据库检索到一些非常常用(并且很少更新)的信息。我们不希望每次需要此信息时都查询数据库,因为它非常频繁。有一种方法可以通过应用程序(仅由管理员)更新此信息。使用此方法时,将更新数据库中的数据,并更新单个服务器(第1台,共4台)中的缓存数据。不幸的是,如果用户点击任何其他服务器,他们将看不到更新的信息。重新启动集群可以解决这个问题,但是,对于我们的生产环境来说,这不是一个可行的解决方案。既然我已经解释了情况,我愿意接受建议。谢谢你抽出时间 (类

我对目前正在开发的产品有问题。本质上,在服务器启动时从数据库检索到一些非常常用(并且很少更新)的信息。我们不希望每次需要此信息时都查询数据库,因为它非常频繁。有一种方法可以通过应用程序(仅由管理员)更新此信息。使用此方法时,将更新数据库中的数据,并更新单个服务器(第1台,共4台)中的缓存数据。不幸的是,如果用户点击任何其他服务器,他们将看不到更新的信息。重新启动集群可以解决这个问题,但是,对于我们的生产环境来说,这不是一个可行的解决方案。既然我已经解释了情况,我愿意接受建议。谢谢你抽出时间

(类似于)


也就是说,我认为标准答案应该是“分布式对象存储”。但是(我们使用的)一个粗略的替代方法是配置一个要联系的服务器:端口组合列表,通知每个集群成员更新他们自己的数据副本。

IBM WebSphere Application server有一个动态缓存,您可以用它来存储Java对象。可以将缓存设置为在复制域上使用,以便在集群中共享


您的代码将使用该接口与缓存交互。动态缓存的所有设置可以包含在应用程序中,也可以预先配置。示例包含在javadoc链接中。

对于一个简单的解决方案,您可以转到管理控制台中的集群并启动它。这将优雅地停止/启动节点,并且一次停止/启动一个节点。唯一的影响是它工作时容量减少了25%。

使用jms主题通知应用程序更新如何?