Управление транзакциями исходящего адаптера Spring Integration JMS - PullRequest
2 голосов
/ 15 августа 2011

Для достижения высокой производительности сообщений с jms с включенными транзакциями необходимо контролировать количество сообщений, отправляемых по каждой транзакции, чем больше число, тем выше производительность,

Можно ли таким образом управлять транзакциями с помощью весенней интеграции?

Кто-то может предложить использовать агрегатор, но это противоречит цели, потому что я не хочу, чтобы в очереди было одно сообщение, содержащее X сообщений меньшего размера, а на самом деле X сообщений в моей очереди.

Спасибо!

1 Ответ

0 голосов
/ 30 июля 2013

Я не знаю о вашей настройке, но я бы увеличил число одновременных потребителей в источнике, чем пытался настроить исходящий адаптер. Какой источник данных качает в этом объеме данных? По моему опыту, обычно продюсер отстает от издателя - если только оба не являются JMS / ресурсами обмена сообщениями - как в случае моста. В этом случае вы в основном увидите значительное улучшение, увеличив число одновременных потребителей, поскольку вы выделяете n потоков для получения сообщений и их параллельной обработки, и каждый поток будет работать в своей собственной «среде транзакций».

Стоит также отметить, что JMS не указывает механизм транспорта, и брокер выбирает транспорт. Если вы используете activemq, вы можете попробовать поэкспериментировать с open wire против amqp и посмотреть, получите ли вы желаемую пропускную способность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...