powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Последовательное получение сообщений в Message Dricve-Bean.
9 сообщений из 9, страница 1 из 1
Последовательное получение сообщений в Message Dricve-Bean.
    #38005947
pulp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Есть очередь Queue. В неё отправитель пишет сообщения. Получателю необходимо вычитывать сообщения строго в том же порядке, в котором они были помещены.
Подскажите пож., можно это как-то сделать?
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38005952
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так как JMS не гарантирует порядка обработки, то нужно самостоятельно добавлять в сообщения некий инкрементальный идентификатор и ориентироваться по нему.
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38005955
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно ещё смотреть конкретного провайдера. Высока вероятность что у него уже есть такая фич
http://docs.oracle.com/cd/E15051_01/wls/docs103/jms/uoo.html
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38005965
pulp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если в очередь одновременно поступило несколько сообщений, запускается несколько MDB методов onMessage. Можно как-то сделать, чтобы запускался только один, в одном потоке?
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38005971
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pulpЕсли в очередь одновременно поступило несколько сообщений, запускается несколько MDB методов onMessage. Можно как-то сделать, чтобы запускался только один, в одном потоке?
Размер пула для MDB сконфигурять в один поток.
https://www.google.com/search?q=MDB+pool+size
Опять же это vendor-specific. А что у вас за сервер, вы не сообщили.
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38005981
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да и задачу примерно описать неплохо бы - часто приходится встречаться что пользуются неправильными инструментами
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38005995
pulp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сервер: WebSphere Applicaition Server 8.5. Провайдер JMS - на сфере Defaulf Message Provider (SIB).
Задача: Есть финансовая система А, в которой генерятся документы (проводки). Нужно эти проводки передать в систему Б в том же порядке, т.к. проводки могут как пополнять счет, так и списывать с него. И если придёт два списания и не одного пополнение, то возможно красное сальдо.

Есть параметр maxSession, подскажите, он для чего?

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
@MessageDriven(
		activationConfig = { 
	        @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),  
	        @ActivationConfigProperty(propertyName = "maxSession", propertyValue = "1"),  
	        @ActivationConfigProperty(propertyName = "messageSelector", propertyValue = "JMSType = 'ResNav'"),  
	        @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge")
		}, 
		mappedName = "PackageReceiverDestination")
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38006422
Фотография buldozer01
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Unit Of Order

В Weblogic см WlMessageProducer
...
Рейтинг: 0 / 0
Последовательное получение сообщений в Message Dricve-Bean.
    #38007859
pulp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашёл в параметрах Activation specifications:
Resources\JMS\JMS Providers\Default messaging provider\Activation specifications\ВАШ_act_spec, параметр [Maximum concurrent MDB invocations per endpoint] нужно выставить в 1.
Возможно можно сделать и программно, но пока не нашёл.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Последовательное получение сообщений в Message Dricve-Bean.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]