1. Как долго сообщение находится в очереди прослушивателя? Пока диспетчер не прочитает сообщение из очереди в сценарии «1 издатель 1 потребитель»?
Listener listener = new Listener(Queue.Default, transport, subject, new object());
listener.MessageReceived += OnMessageReceived;
Dispatcher dispatcher = new Dispatcher(listener.Queue);
2, Tibco RV обычно используется в большой разветвленной системе с относительно слабыми требованиями к надежности доставки, например, рыночные данные публикуются для 20 приложений на предприятии. Я слышал, что Tibco RV реализует решение «без копирования» для ответвлений — как это вообще возможно? Я предполагаю, что нам нужно, по крайней мере, просмотреть всех зарегистрированных слушателей для этой очереди и уведомить каждого из них, в процессе чего сообщение копируется 20 раз. Пожалуйста, просветите меня.
3. Объедините вопросы 1 и 2. Сообщение не имеет смысла находиться в очереди слушателей до тех пор, пока ВСЕ зарегистрированные слушатели не обработают сообщение. Что произойдет, если 1 из 20 приложений отключится? Это приведет к остановке процесса демона rv из-за постоянно растущего количества сообщений. Есть ли у Tibco RV ограничение на время жизни (ttl) для каждого сообщения? Как его проверить и установить новые значения?
В Google не так много соответствующей информации, поэтому, пожалуйста, помогите.
Спасибо.