1

メッセージ駆動型コンシューマーを使用するように春の統合を構成する方法。次の構成では、私の消費者はメッセージをポーリングしており、ポーリングではなくイベント駆動型にする方法を理解できません..

 <bean id="dataQueue" class="org.apache.activemq.command.ActiveMQQueue">
        <constructor-arg name="name" value="${jms.data.queue.name}" />
    </bean>

    <jms:message-driven-channel-adapter channel="dataInputChannel" destination="dataQueue"  />
    <int:channel id="dataInputChannel" />    
    <int:channel id="persistDataChannel" />
    <int:channel id="processDataChannel" />

    <int:recipient-list-router id="customRouter" input-channel="dataInputChannel" timeout="10000" ignore-send-failures="true" apply-sequence="true">
        <int:recipient channel="persistDataChannel"/>
        <int:recipient channel="processDataChannel"/>
    </int:recipient-list-router> 
4

1 に答える 1

1

何を言っているのかよくわかりません。イベント駆動型です。メッセージが到着するか、受信タイムアウトが発生するまで、スレッドはクライアント ライブラリのコードでブロックされます。基になるリスナー コンテナーによる TRACE デバッグで見られるアクティビティが心配な場合は、単純に receiveTimeout を増やします。

于 2012-11-13T15:34:45.990 に答える