Spring Integration - 在Splitter输出通道上配置事务超时

时间:2015-05-19 15:37:58

标签: java spring spring-integration

我有一个分配器输出到taskexecutor支持的通道。我们的想法是并行处理所有这些消息。最近我们开始看到其中一些消息的Txn超时。什么是以最小的变化增加Txn超时的最佳方法?这是相关的配置代码。

....
....
<channel id="splitterOutputChannel">
    <dispatcher task-executor="eventProcessingExecutor" failover="false" />
</channel>

<splitter id="listSplitter" input-channel="splitterInputChannel" output-channel="splitterOutputChannel" />

<service-activator ref="referenceBean" method="setFileId" input-channel="splitterOutputChannel"
    output-channel="eventProcessingInputChannel" />

<chain input-channel="eventProcessingInputChannel" output-channel="enricherOutputRouterChannel">
    <header-enricher error-channel="errorHandlingChannel" />
    <service-activator ref="messageEnricherBean" method="getPayloadFromDatabase" />
</chain>
....
....

在方法setFileId上设置Txn超时会解决吗? (目前,它上面没有任何事务处理配置,并且spring采用默认weblogic 30秒超时)

@Transactional(timeout=60)
public Message<?> setFileId(Message<?> message) {
    ...
    return myMessage;
}

0 个答案:

没有答案