Spring集成特定渠道

Tia*_*ici 2 spring spring-integration

DirectChannel、QueueChannel、ExecutorChannel、PriorityChannel、RendezvousChannel、PublishSubscribeChannel 与集成组件的关系是什么?使用它们的最佳方法是什么?

Art*_*lan 5

Spring Integration 中有 3 个一等公民:Endpoint、Channel 和 Handler。端点从通道获取数据以在处理程序中处理它。

不同的通道类型适用于端点从中获取数据的不同方法。

DirectChannel非常简单,它的数据直接从调用者的线程处理。就像简单的原始 Java - main -> service 方法一样。

QueueChannel用于缓冲内部队列中的数据。端点以所需的速度从那里轮询数据。

ExecutorChannel只是将数据转移到已配置的空闲线程Executor。然后已经在该线程上调用了处理程序。

PriorityChannel与 类似QueueChannel,但具有发送时存储在内部队列中的数据的排序功能。

RendezvousChannel完全基于SynchronousQueueJava。

PublishSubscribeChannel提供 a-latopic实现 - 所有处理程序都会收到相同的消息。

有关此问题的更多信息,请参阅文档和 JavaDocs。

另外不要忘记有关此事的理论:http://www.enterpriseintegrationpatterns.com/