2014-02-12 2 views
2

Получены ли сообщения на Websphere MQ topic, на которых вы подписаны на strictly ordered?Темы Websphere MQ - они строго упорядочены?

Другими словами, аналогично queue, учитывая, что ваше соединение поддерживается, вы гарантированно получите сообщения topic в том же порядке, в каком они были отправлены?

ответ

3

Согласно спецификации JMS

JMS defines that messages sent by a session to a destination must be received 
in the order in which they were sent. This defines a partial ordering 
constraint on a session’s input message stream. 

JMS does not define order of message receipt across destinations or across 
a destination’s messages sent from multiple sessions. This aspect of a 
session’s input message stream order is timing-dependent. It is not under  
application control. 

Также

Although clients loosely view the messages they produce within a session 
as forming a serial stream of sent messages, the total ordering of this stream 
is not significant. The only ordering that is visible to receiving clients is 
the order of messages a session sends to a particular destination. 
Several things can affect this order like message priority, 
persistent/non persistent etc. 

Так, чтобы ответить на Ваш вопрос not really JMS provider specific в каком порядке принимаются сообщения. Они будут получены в том же порядке, в котором они были отправлены с вышеуказанной информацией. Порядок, в котором сообщения доставляются на сервер, будет ограничен ограничениями, такими как приоритет сообщения, постоянный/непостоянный и т. Д.

+0

Хорошо, я просто хотел проверить, что это относится к 'теме', а также к' queue', это верно? Спасибо – vikingsteve

+0

да это относится к 'Destination', который может быть либо' Queue', либо 'Topic'. –

+0

В дополнение к комментариям Aniket относительно спецификации, применяются обычные ограничения WMQ. Например, если сообщения проходят через QMgr-QMgr-канал и имеют различный приоритет или постоянство, если есть несколько путей, к которым могут следовать сообщения, если в очереди, в которую отправляются сообщения, есть несколько потребителей (потому что охватывает темы, доставляющие сообщения в очереди, даже если приложение не видит их в виде очередей), если очередь переполняется в DLQ и т. д., тогда они могут не прибыть в отправленном порядке. Спецификация ссылается на это, где говорится о нескольких направлениях. –