SEDA并发消费者和处理时间

时间:2017-08-03 07:34:42

标签: multithreading apache-camel

对于以下代码:fileLineToObject bean将一行转换为对象,并使用Producer Template将每个对象发送到文件中所有行的循环中的direct:member端点。

<template id="MemberTemplate" defaultEndpoint="direct:member" />

<route>
    <from uri="direct:start"/>
    <bean ref="fileLineToObject"/>
</route>

<route>
    <from uri="direct:member"
    ......
    <to uri="seda:input">
</route>

<route>
    <from uri="seda:input?concurrentConsumers=4" />
    <bean ref="abcProcessor" /> // These are complete CPU bound. 
    <bean ref="xyzProcessor" />
    <to uri="direct:xxx" />
</route>

<route>
    <from uri="direct:xxx"
    ......
    <to uri="seda:output">
</route>
<route>
    <from uri="seda:output?concurrentConsumers=4"
    ......
    <to uri="file:xxx">
</route>

无论seda输入或输出并发消费者的数量如何,处理时间(可忽略不计)都没有区别。我在四核PC上测试。是因为核心有限吗?

如何使用并发减少处理时间?

0 个答案:

没有答案