Очереди Tibco- EMS

Мое требование - настроить EMS, как показано ниже. Возможно ли это? 1. Родительская очередь EMS. 2. Дочерний EMS прослушивается Tibco BW Engine.

Очередь EMS будет получать тысячи сообщений каждую минуту ... родительская очередь должна накапливать сообщения и передавать ограниченное количество сообщений в дочернюю очередь, скажем, 1000 - это предел .. То есть дочерняя очередь должна иметь 1000 сообщений, а остальные сообщения должны находиться в родительской очередь ... Как только тысяча сообщений в дочерней очереди будет использована Tibco BW, родительская очередь для отправки следующей тысячи сообщений в дочернюю очередь .. Можно ли это сделать?


person GKN    schedule 24.02.2015    source источник


Ответы (1)


Я вижу два пути:

1 - Чтобы делать именно то, что вы предлагаете, вам понадобится «управляющий» компонент BusinessWorks, реагирующий на сигнал, отправленный из «опустошения» дочерней очереди, и передача ровно 1000 сообщений от родительского к дочернему (через транзакцию и с постоянством если вы не можете потерять сообщения). Я понятия не имею, зачем вы это делаете ... но это отвечает требованиям

2 - Предполагая, что ваш вопрос связан с темпами исходящих сообщений (дочерняя очередь) БЕЗ стимуляции входящих сообщений (родительская очередь), я предлагаю кое-что еще: используйте свойство flowControl EMS Destination и ограничьте поток сообщений другим способом. По умолчанию, если вы реализуете flowControl размером 10000 КБ со средним размером сообщений 10 КБ, то у вас должно быть такое же ограничение, как и запрошенное. В этом случае план будет заключаться в соединении вашего «родителя» с вашим «дочерним элементом» и реализации управления потоком для обоих пунктов назначения (с разными значениями) И самого моста (как указано в разделе «Мосты назначения и управление потоком» пользователя. руководство).

person GhislainCote    schedule 25.02.2015
comment
Спасибо .. Я попробую предложения .. Я понял, что если у нас есть процесс BW с контролем ограничения потока и входящее сообщение очень высокое .. Процесс BW закроет получателя сообщений и потребляет сообщения только после того, как некоторые пороговые сообщения будут обработаны. . Каждый раз, когда серверу EMS нужно будет кэшировать и переориентировать сообщения для отправки в очередь .. Так что, если я ограничил количество сообщений в очереди .. Думал, это будет быстрее .. Пожалуйста, обратитесь к stackoverflow.com/q/28544050/889457 - person GKN; 25.02.2015
comment
@GKN Я верю, что ваша борьба с BW flowLimit будет значительно улучшена, если вы воспользуетесь EMS flowControl. Расскажите, как это происходит ... и проголосуйте, если вам действительно понравились предложения ;-) - person GhislainCote; 25.02.2015
comment
Я работал над этим, но наша команда IFS перенесла TIBCO EMS с 5. * на 8. *, где проблема решилась автоматически. Спасибо за отзыв, это действительно пролило свет на меня :) - person GKN; 06.04.2016