【问题标题】:How can I share variables among different load-balanced WebSphere instances?如何在不同负载平衡的 WebSphere 实例之间共享变量?
【发布时间】:2014-01-05 20:49:32
【问题描述】:

我在四台不同机器上的 WebSphere 社区版 (WAS CE) 服务器上部署了 Web 应用程序,以实现负载平衡。我想在四台服务器之间存储一些常量变量/对象。如果我在一台服务器上更改 Web 应用程序中的变量,则其他三台服务器上的 Web 应用程序应该可以使用相同的副本。由于这些变量/对象与用户会话无关,因此粘性会话在这里无济于事。 JNDI 是最好的解决方案吗?请分享您对任何其他更好的解决方案/技术的了解。

操作系统:Linux
应用服务器:WebSphere 社区版 (WAS CE)。

【问题讨论】:

  • 我不同意结束投票。这不是 ServerFault 问题,因为这个问题通常与 JavaEE 相关,而不是与 WAS CE 相关。

标签: jakarta-ee websphere websphere-ce


【解决方案1】:

如果这些值在运行时发生变化,那么将这些变量放在 ServletContext 范围内最有意义。

如果这些值在运行时确实发生了变化,那么它们必须驻留在集群中所有服务器都可以访问的存储介质中。不过,我不确定 JNDI 是否适合您(我不记得 JEE 规范中要求跨容器同步 JNDI 树的任何内容); EHCache 这样的分布式缓存框架会更有意义。

【讨论】:

  • 感谢您的回复。 EHCache/Haselcast 解决了我的问题。这些对于高度分布式环境来说是非常好的框架。
猜你喜欢
  • 2018-09-05
  • 2018-04-23
  • 1970-01-01
  • 2019-02-21
  • 1970-01-01
  • 2019-01-30
  • 1970-01-01
  • 1970-01-01
  • 2018-03-06
相关资源
最近更新 更多