我知道Weblogic集群在集群的节点之间复制会话状态(根据复制策略),但据我所知,它不会复制ServletContext(应用程序范围)状态。
Weblogic中是否有任何配置可以做到这一点?
我在应用程序范围内有一个消息列表(由系统管理员设置),应用程序会将它们显示给用户。
在集群应用程序服务器之前一切都很好,但之后出现了一些问题。管理员更新的消息不会显示给所有用户,我相信消息只是在集群的单个节点上设置。
我还跟踪应用程序中的在线用户列表(我更新用户登录和注销列表)并将列表存储在应用程序范围内。如何在群集上维护列表?
答案 0 :(得分:1)
是否有必要将消息保留在应用程序范围内。因为它更好地保持他们在会话中。但似乎您的功能需要如此。告诉我一件事是你在你的应用程序中使用Coherence,如果以下情况可行:
检查以下weblogic参数
相干性的ServletContext聚集
true或false表示ServletContext的属性是否将被聚类。如果为true,则所有可序列化的ServletContext属性值将在所有集群节点之间共享。
如果未指定,则默认为false,主要是因为Servlet规范指示ServletContext属性是JVM的本地属性而不应该是群集的。
有关详细信息,请参阅http://docs.oracle.com/cd/E13924_01/coh.340/e14408/appparams.htm