Интеграция Spring как встроенная альтернатива автономному ESB

Поведение, которое вы видите, является результатом двух фактов:

  1. с использованием executeWithFork добавляет немного дополнительной задержки для переключения потоков

  2. [1118 ] вы используете ConcurrentSubject.publish (в отличие от replay, например). Если вы откроете документы для PublishSubject , то увидите, что

A PublishSubject отправляет подписчику только те элементы, которые испускаются Источник после времени подписки.

blockquote>

Другими словами, у вас есть условие состязания между основным потоком, который публикует "one" и "two", и разветвленным потоком, который должен подписаться на input, чтобы получить данные. Результаты зависят от того, какой поток выиграет гонку: все данные, опубликованные до подписки, будут потеряны. Одно мое оборудование я почти всегда вижу "two" и очень редко даже вижу "one", ваши результаты могут отличаться.

Самый простой способ проверить это - добавить Thread.sleep(100) перед первым input.onNext, и вы должны увидеть оба события, напечатанные каждый раз. Вы также можете попытаться выдвинуть больше событий, чем просто 2, чтобы увидеть, что не все потеряно.

5
задан FoxyBOA 16 September 2009 в 09:27
поделиться

2 ответа

Помните, «ESB» - это просто маркетинговый термин, предназначенный для продажи более дорогого программного обеспечения, а не волшебная пуля. Вам необходимо подумать о конкретных задачах, которые вам нужно выполнять, и выбрать соответствующий вариант. Если Spring Integration, кажется, отвечает всем требованиям, я бы не стал слишком беспокоиться, если он не будет похож на сверхдорогую установку сервера.

9
ответ дан 18 December 2019 в 10:50
поделиться

Эта ссылка описывает FileSucker с Интеграцией Spring. Читайте на Ваших шаблонах Интеграции Предприятия для большего количества информации, я думаю.

Я отчасти думаю, что необходимо сделать немного больше расследования Ваш сам или сделать несколько попыток на некоторых вариантах использования. Затем мы можем обсудить то, что хорошо и плохо

2
ответ дан 18 December 2019 в 10:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: