5

我想配置一个 spring 集成应用程序,以便如果我将多个任务(每个任务由一条消息表示)放在一个通道上,那么一组端点中的一个将选择下一个任务并处理它。我猜这将需要一些线程池执行器服务。

4

1 回答 1

6

是的,将调度程序 + 任务执行器与通道(又名ExecutorChannel)一起使用。这样service-activator,从通道消费的任何端点(例如)都将使用调度程序的线程池异步调用。

在下面的示例中,任何登陆通道的消息channel01都将被jobLauncher其中一个taskExecutor线程中的服务使用。

<int:channel id="channel01">
    <int:dispatcher task-executor="taskExecutor">
</int:channel>

<task:executor id="taskExecutor" pool-size="2"/>

<int:service-activator input-channel="channel01" ref="jobLauncher">
于 2011-05-10T10:42:50.390 回答