春季整合特定渠道
问题描述:
与渠道的关系如何: DirectChannel,QueueChannel,ExecutorChannel,PriorityChannel,RendezvousChannel,PublishSubscribeChannel以及最佳方式使用它们的集成组件?春季整合特定渠道
答
Spring集成中有3个第一级公民:端点,通道和处理程序。端点从通道获取数据以在处理程序中处理它。
不同的通道类型服务于不同的方法从端点获取数据。
DirectChannel
非常简单,其数据直接从调用者的线程处理。就像简单的原始Java - main - >服务方法一样。
QueueChannel
用于缓冲内部队列中的数据。端点从那里调查其期望速度的数据。
ExecutorChannel
只是将数据转移到配置的Executor
的空闲线程。然后处理程序已经在该线程上调用。
PriorityChannel
与QueueChannel
类似,但具有在发送时存储在内部队列中的数据的订单能力。
RendezvousChannel
完全基于来自Java的SynchronousQueue
。
PublishSubscribeChannel
提供了a-la topic
实现 - 所有处理程序都会得到相同的消息。
有关此问题的更多信息,请参阅文档和JavaDocs。
而且不要忘了对此事的理论:http://www.enterpriseintegrationpatterns.com/
另请参阅[消息信(http://docs.spring.io/spring-integration/reference/html/messaging-channels-section。 html)在每个类型的描述参考手册。 –