我有一个问题,我想知道解决它的最佳方法是什么。
基本上,我在集群环境 (weblogic 11g) 中有两个 Web 应用程序。
第一个 Web 应用程序用于上传“文档”并管理这些 Web 应用程序在第二个 Web 应用程序中是否可见。这些文档存储在两个 Web 应用程序都可以读取的数据库中
第二个 Web 应用程序可以被视为文档查看器。
因为加载这些文档可能会非常慢。我想尽快加载它们,而不是等待请求。
网络应用程序定期检查数据库中是否有新的/删除的/更新的文档的拉模型似乎不太实用。
当第一个 Web 应用程序的用户(管理员)更新文档以便第二个 Web 应用程序可以从数据库检索文档时,发出信号的最佳方式是什么?
我的第一个想法是使用 JMS 服务器,但这对于这样一个简单的信号系统来说似乎有点沉重。
什么最适合这种情况?
- 集群的 JMS 服务器?
- JNDI 对象?
最佳答案
为什么 JMS 很重?您已经使用了带有集成 JMS 的应用程序服务器。
- 您可以使用一个专用于每个集群节点的队列。
- 上传时,您可以在每个队列中发布一条消息
- 每个集群节点上都有一个充当
QueueReceiver
的作业,该作业依次更新其本地缓存
作为替代方案,您可以尝试为每个集群节点调用 servlet/web 服务(再次更新本地缓存)。
关于java - weblogic集群中web应用程序之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18180030/