为什么WLS中的JMS消息桥每30秒停止/启动一次

为什么WLS中的JMS消息桥每30秒停止/启动一次,jms,weblogic,weblogic-10.x,Jms,Weblogic,Weblogic 10.x,我遇到了一个问题,我的JMS消息桥似乎每30秒被WLS停止并重新启动一次 据我所知,网桥实际上工作正常,WLS控制台将其报告为“活动的转发消息”。据我所知,桥两端的两个队列都工作正常 我的WLS日志中每30秒显示的消息如下所示。这六行每次都重复 ####<2011-sep-20 kl 12:48 CEST> <Info> <MessagingBridge> <host> <server> <[ACTIVE] ExecuteThre

我遇到了一个问题,我的JMS消息桥似乎每30秒被WLS停止并重新启动一次

据我所知,网桥实际上工作正常,WLS控制台将其报告为“活动的转发消息”。据我所知,桥两端的两个队列都工作正常

我的WLS日志中每30秒显示的消息如下所示。这六行每次都重复

####<2011-sep-20 kl 12:48 CEST> <Info> <MessagingBridge> <host> <server> <[ACTIVE] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1316515696279> <BEA-200020> <Bridge "NameOfBridge" is stopped.> 
####<2011-sep-20 kl 12:48 CEST> <Info> <MessagingBridge> <host> <server> <[ACTIVE] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1316515696279> <BEA-200033> <Bridge "NameOfBridge" is obtaining connections to the two adapters.> 
####<2011-sep-20 kl 12:48 CEST> <Info> <Common> <host> <server> <[ACTIVE] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1316515696284> <BEA-000628> <Created "1" resources for pool "eis/jms/WLSConnectionFactoryJNDIXA", out of which "1" are available and "0" are unavailable.> 
####<2011-sep-20 kl 12:48 CEST> <Info> <Common> <host> <server> <[ACTIVE] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1316515696340> <BEA-000628> <Created "1" resources for pool "eis/jms/WLSConnectionFactoryJNDIXA", out of which "1" are available and "0" are unavailable.> 
####<2011-sep-20 kl 12:48 CEST> <Info> <MessagingBridge> <host> <server> <[ACTIVE] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1316515696340> <BEA-200032> <Bridge "NameOfBridge" is configured to disallow degradation of its quality of service in cases where the configured quality of service is unreachable.> 
####<2011-sep-20 kl 12:48 CEST> <Info> <MessagingBridge> <host> <server> <[ACTIVE] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1316515696340> <BEA-200030> <Bridge "NameOfBridge" is configured to work in "Exactly-once" mode, and it is actually working in "Exactly-once" mode.> 
(需要Oracle帐户),这是异步JMS桥的正常行为

文档中的问题描述为:

使用WebLogic Server 9.2及更高版本;在配置了JMS并设置了JMS消息传递网桥的域中,JMS消息网桥的日志记录显示每30秒断开并重新连接到源目标

从Oracle的角度来看,这是正常的预期行为:

这是一种轮询机制,通常发生在源-目标中没有消息时,以及消息桥处于空闲状态时


由于异步网桥会出现这种情况,因此阻止这种情况发生的方法是禁用JMS消息传递网桥的“异步模式启用”选项,这将停止它的轮询。

您能从配置中发布定义的
消息传递网桥吗?我的原始答案已被主持人删除,因此,我无法请求在编辑后将其取消删除。为了更好地回答这个问题,我重写了我的答案。
<messaging-bridge>
  <name>NameOfBridge</name>
  <target>servercluster</target>
  <source-destination>NameOfBridgeLocalDest</source-destination>
  <target-destination>NameOfBridgeRemoteDest</target-destination>
  <selector></selector>
  <quality-of-service>Exactly-once</quality-of-service>
  <started>true</started>
</messaging-bridge>
<jms-bridge-destination>
  <name>NameOfBridgeLocalDest</name>
  <adapter-jndi-name>eis.jms.WLSConnectionFactoryJNDIXA</adapter-jndi-name>
  <classpath></classpath>
  <connection-factory-jndi-name>JmsXA</connection-factory-jndi-name>
  <initial-context-factory>weblogic.jndi.WLInitialContextFactory</initial-context-factory>
  <connection-url></connection-url>
  <destination-jndi-name>queue/NameOfQueue</destination-jndi-name>
  <destination-type>Queue</destination-type>
</jms-bridge-destination>
<jms-bridge-destination>
  <name>NameOfBridgeRemoteDest</name>
  <adapter-jndi-name>eis.jms.WLSConnectionFactoryJNDIXA</adapter-jndi-name>
  <classpath></classpath>
  <connection-factory-jndi-name>ConnectionFactory</connection-factory-jndi-name>
  <initial-context-factory>org.jnp.interfaces.NamingContextFactory</initial-context-factory>
  <connection-url>jnp://server:port</connection-url>
  <destination-jndi-name>queue/NameOfQueue</destination-jndi-name>
  <destination-type>Queue</destination-type>
</jms-bridge-destination>