2009-04-08 4 views
3

Я не смог найти примеров того, как RendezvousChannel работает в Spring Integration. Кто-нибудь знает какие-либо ресурсы?Spring Integration: Как работает RendezvousChannel?

Я читал, что RendezvousChannel полезен для адаптации клиентов запроса/ответа к асинхронному обмену сообщениями в Spring Integration.

ответ

5

RendezvousChannel расширяет QueueChannel и имеет такое же поведение:

  • Чтение из блоков каналов, пока либо сообщение не доступно или возникает тайм-аут.
  • Запись на канал блокирует до тех пор, пока емкость очереди не разрешит другое сообщение или тайм-аут.

Внутренне однако RendezvousChannel использует потенциал в сочетании с SynchronousQueue. Поэтому отправители будут блокироваться до тех пор, пока получатели не закончат, ну, получая и наоборот, в основном устанавливая синхронную связь.

Как для примеров, я не думаю, что их еще нет.

Если вы хотите получить представление о том, как RendezvousChannel может использоваться как временный канал ответа для реализации сценариев запроса/ответа (как указано в разделе 0., раздел 4.1.2), ознакомьтесь с исходным кодом sendAndReceive способ MessageChannelTemplate. Этот использует внутреннюю реализацию PollableChannel, но шаблон можно легко перенести RendezvousChannel.

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