2015-02-24 4 views
1

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

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

ответ

1

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

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

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

+0

Спасибо .. Я попробую предложения .. Я понял, что если у нас есть BW-процесс с ограничением потока, и входящее сообщение очень велико. Процесс BW закроет потребитель сообщения и будет потреблять сообщения только после некоторых пороговых сообщений являются процессами. Каждый раз, когда сервер EMS должен будет делать кеш и повторно приоритеты сообщений для отправки очереди. Поэтому, если я ограничил сообщения в очереди .. Думал, что это будет быстрее .. Pls ссылается http://stackoverflow.com/q/28544050/889457 – GKN

+0

@GKN Я верю, что ваша борьба с BW flowLimit будет значительно улучшена, если вы будете использовать EMS flowControl. Скажите мне, как это происходит ... и проголосуйте, если вам действительно понравились предложения ;-) – GhislainCote

+0

Я работал над этим, но наша команда IFS перенесла TIBCO EMS с 5. * до 8. *, где проблема была решена автоматически. Спасибо за ваши отзывы, это действительно показало мне немного света :) – GKN

Смежные вопросы