来自多个提供者URL的Weblogic JMS消耗

时间:2012-05-08 13:43:24

标签: jms weblogic

我们有一个带有2个jms服务器的集群weblogic 10.3.4域 - 每个服务器都在一个模块中部署了一个UDQ。在任何给定时间,这些队列中只有一个拥有大约5000条消息(假设数字)。

在消费者方面,我们有连接到这些队列的客户端代码,以消耗所有5000条消息。此代码的工作方式是使用逗号分隔的t3提供程序URL列表。这里的问题是如果客户端获得与没有消息的jms服务器的连接,它认为没有消息要处理。

是否有配置设置或代码逻辑可用于连接到所有提供程序并使用100个批处理消息,直到没有任何队列留下消息?

1 个答案:

答案 0 :(得分:0)

这比你想要的更强大,但你可以:

  1. 获取t3连接网址字符串的副本。
  2. 对t3网址执行正常连接。如果它跳过第一个 n 网址,则意味着它们处于脱机状态。
  3. 使用连接中的所有消息。
  4. 断开连接。
  5. 删除刚刚连接到的网址以及之前的所有网址。
  6. 如果还有任何网址,请转到#2。否则,请转到#1。
  7. 其他一些注意事项:

    • 您可能希望在#6之后添加暂停。
    • 只需获取列表中每个URL的连接,并为每个URL启动一个消息监听器。