【问题标题】:WebSphere MQ - Changing channel definition structure using XMS.NET APIWebSphere MQ - 使用 XMS.NET API 更改通道定义结构
【发布时间】:2014-10-04 14:35:10
【问题描述】:

我正在尝试设置 MQCD 结构属性 - 特别是使用 XMS.NET API 的 HeartBeatInterval。

背景:我有客户端应用程序(在 .NET 中)使用 XMS.NET API 从 WebSphere MQ 读取消息。我使用 ClientAcknowledge 模式。如果客户端读取消息但未确认,WebSphere MQ 会在超时前等待 300 秒,并使(退出)原始队列中的消息可供其他客户端读取消息。

任务:我想将超时时间从 300 秒降低。

我们的 MQ 管理员建议更改频道上的 HearBeatInterval 属性。但是改变它没有任何区别。

显然,以某种方式在客户端设置 Channel 的 HeartBeatInterval 属性(以及服务器端通道设置)将使其工作。我正在尝试在客户端应用程序中设置此值。但是XMS API 没有与MQCD.HeartBeatInterval 属性对应的属性

对完成降低消息确认超时的任务有什么见解吗?甚至在客户端设置 HeartBeatInterval - 如果这样做的话。

【问题讨论】:

  • 为什么要降低超时时间?为什么不确认消息?
  • 我们在正常流程中确认消息。但是我们想处理客户端在没有确认的情况下异常挂断的场景。我们希望其他客户端实例能够在消息返回队列中之前等待 300 秒更快地处理消息。我们在负载平衡设置中运行多个客户端应用程序实例。知道如何降低此超时时间吗?

标签: .net ibm-mq heartbeat xms


【解决方案1】:

当然,心跳间隔的实际协商值确实会从客户端和服务器端的心跳值中取出最大的数字,即将使用最不频繁的间隔。如果您想要更短的间隔,则需要更改两端。

与其在您的应用程序中编写代码,不如使用 CCDT?如果您改变主意要使用的值并希望在将来降低或提高它,这会更加灵活。

进一步阅读

  1. Using a client channel definition table with .NET

【讨论】:

  • 感谢您的建议。如果我采用 CCDT 方法,您是否有任何关于如何从 XMS.NET API 使用它的信息/样本/材料。据我了解,客户端应用程序必须以某种方式在 MQ 中引用此 CCDT 条目。
  • 在答案文本中添加了链接
  • 莫拉格,那个链接坏了,你手边有新的吗?
【解决方案2】:

我认为您可以使用服务器连接通道的断开连接间隔(DISCINT) 属性来终止来自挂起的应用程序的连接。默认情况下,DISCINT 设置为 0,这意味着它被禁用。您可以设置一个适合您要求的值。在这里阅读更多:http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.ref.con.doc/q081860_.htm

这是在 XMS .NET 应用程序中使用 CCDT 的示例 sn-p。

        // Get an instance of factory.
        factoryFactory = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ);

        // Create WMQ Connection Factory.
        cf = factoryFactory.CreateConnectionFactory();

        // Use CCDT URL for client connection.
        cf.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, "QM1");
        cf.SetStringProperty(XMSC.WMQ_CCDTURL, "file://C:\\ProgramData\\IBM\\MQ\\qmgrs\\QM1\\@ipcc\\AMQCLCHL.TAB");

        // Create connection.
        connectionWMQ = cf.CreateConnection();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-16
    • 1970-01-01
    • 1970-01-01
    • 2011-02-10
    • 2011-05-29
    • 2015-07-23
    • 2012-08-01
    • 1970-01-01
    相关资源
    最近更新 更多