java同步集群JMS应用程序(Weblogic)
首先:
- 我将Weblogic 11g与3台托管服务器和3台JMS服务器一起使用分布式队列和3台saf代理(用于发送消息)。所有JMS服务器的持久存储都存储在网络路径中—3个服务器的3个文件李>
- 我需要一个向队列发送消息的应用程序(比如
output.jms.q
),然后等待大约20秒从另一个队列获取消息(比如input.jms.q
) - 当前,应用程序将消息发送到其目的地,当它接收到消息时,消息将落在分布式队列中的3个队列之一李>
在我的代码中,如果我从Managed-Server-1发送消息,它将尝试在Managed-Server-1中获取响应。(使用InitialContext()
构造函数)。这使得66%的信息无法访问
我知道Forward Delay
选项,并将其设置为2秒。当我在开发时,它工作得很有魅力!现在,当我有很多客户机测试它时,感觉Forward Delay
没有选择正确的服务器
当我关闭2台托管服务器时,它的运行速度惊人。但我只使用一台机器,而不是3台
这可能是我的设置吗
对于每个托管服务器,都有一个JMS服务器和一个分布式队列。我相信对于这件事,我只需要一个队列,每个JMS服务器都可以连接到这个队列。类似于共享队列而不是分布式队列
可能吗
# 1 楼答案
解决我问题的办法是使用分布式主题。Weblogic 10.3.5+支持在服务器之间复制消息。 是啊,这太差劲了。。但这就是我发现的