Соединение Websphere MQ 7.0.1 C # XMS вызывает ошибку tcp 10054 (X'2746 ') - PullRequest
3 голосов
/ 12 октября 2011

У меня есть простая программа, подключающаяся к удаленному администратору очередей, которая работает нормально, и я могу отправлять и получать сообщения.Однако я заметил, что с каждым соединением я получаю ошибки в диспетчере событий приложения Windows:

Ошибка при получении от хоста myhost (12.213.143.252).

Произошла ошибка при получении данных с моего хоста (12.213.143.252) по TCP / IP.Это может быть из-за сбоя связи.

Код возврата из вызова recv () TCP / IP был 10054 (X'2746 ').Запишите эти значения и сообщите системному администратору.

Я подумал, что это может быть связано с тем, что я неправильно отключаюсь на стороне клиента, хотя я не уверен, что делаю неправильно.Вот код, который я использую для проверки соединения, которое все еще вызывает эту проблему:

        XMSFactoryFactory factoryFactory = XMSFactoryFactory.GetInstance(XMSC.CT_WMQ);           
        IConnectionFactory cf = factoryFactory.CreateConnectionFactory();

        cf.SetStringProperty(XMSC.WMQ_QUEUE_MANAGER, WebSphereConfigObject.QueueManager);
        cf.SetStringProperty(XMSC.WMQ_HOST_NAME, WebSphereConfigObject.Host);
        cf.SetIntProperty(XMSC.WMQ_PORT, WebSphereConfigObject.Port);
        cf.SetStringProperty(XMSC.WMQ_CHANNEL, WebSphereConfigObject.ServerConnectionChannel);
        cf.SetIntProperty(XMSC.WMQ_CONNECTION_MODE, XMSC.WMQ_CM_CLIENT);
        IConnection connection = cf.CreateConnection();
        ISession session = connection.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
        connection.Start();
        session.Close();
        connection.Stop();
        connection.Close();

любая помощь очень ценится!

Ответы [ 2 ]

1 голос
/ 13 октября 2011

Из того, что я видел, событие 10054 регистрируется процессом администратора очередей amqrmppa. Событие регистрируется, когда соединение сокета между этим процессом администратора очередей и клиентским приложением XMS прерывается внезапно.

Обычное завершение не регистрирует события.

0 голосов
/ 07 марта 2012

Старайтесь не использовать оба .close вызовов !!!

s.[1]: http://www -01.ibm.com / support / docview.wss? Uid = swg27024064

Правильно закрыть и отключить соединения Кодприложения для правильного закрытия или удаления объектов XMS, которые больше не используются.Невыполнение этого требования, особенно экземпляров IConnection или ISession, может ограничить количество подключений к администратору очередей.

...