Ibm mq IBM Websphere MQ会话生存期

Ibm mq IBM Websphere MQ会话生存期,ibm-mq,Ibm Mq,对于设计为每5秒从MQ服务器获取消息的应用程序中的会话,最佳做法是什么 我应该一直保持一个会话打开(可能是几周或更长),还是最好打开一个会话,获取消息,然后再次关闭会话 我使用的是.net IBM XMS v8客户端库。我不确定您调用的会话是什么,但通常应用程序在启动时连接到为它们提供服务的队列管理器一次,并在运行时保持连接。 我看不出有什么理由仅仅为了5秒钟后重新连接而断开连接 至于保持队列开放,这取决于您的环境。 如果没有特殊情况,我会继续排队 我认为最值得考虑的是你如何发布GET来阅读信息

对于设计为每5秒从MQ服务器获取消息的应用程序中的会话,最佳做法是什么

我应该一直保持一个会话打开(可能是几周或更长),还是最好打开一个会话,获取消息,然后再次关闭会话


我使用的是.net IBM XMS v8客户端库。

我不确定您调用的会话是什么,但通常应用程序在启动时连接到为它们提供服务的队列管理器一次,并在运行时保持连接。 我看不出有什么理由仅仅为了5秒钟后重新连接而断开连接

至于保持队列开放,这取决于您的环境。 如果没有特殊情况,我会继续排队


我认为最值得考虑的是你如何发布GET来阅读信息。

除了@Attila Repasi的回复之外,我会选择一个附加了信息监听器的消费者。每当需要将消息传递给应用程序时,就会调用消息侦听器。这避免了应用程序显式调用receive()从队列检索消息,并在队列上没有消息时浪费CPU周期。

检查XMS.NET

如果应用程序连续发送或接收消息,请将连接和会话保持打开状态更长时间。创建连接或会话是一项耗时的操作,需要消耗大量资源并涉及网络流(对于客户端连接)

会话就是会话;)调用时得到的信息:
ISession session=conn.CreateSession(false,AcknowledgeMode.ClientAcknowledge)