1

これまでのところ、jms 接続ファクトリで同時実行設定しか見つけることができませんでした。

<jms:listener-container connection-factory="myConnectionFactory"
                    task-executor="myTaskExecutor"
                    destination-resolver="myDestinationResolver"
                    transaction-manager="myTransactionManager"
                    concurrency="10">

1 つのキューのコンシューマーの数を構成することはできますか? つまり、次のようなものです:

    <jms:listener destination="playerStatsQueue" ref="playerStatsService"
        method="onMessage" concurrency="100" />

ありがとう!~

4

1 に答える 1

1

名前空間ではなく抽象的な親を使用し、DefaultMessageListenerContainerリスナーごとに 1 つの子インスタンスを作成します。そうすれば、必要なすべてのプロパティを微調整できます。

<bean id="parentContainer" abstract="true"
    class="org.springframework.jms.listener.DefaultMessageListenerContainer">
    <property name="connectionFactory" ref="connectionFactory"/>
    <property name="messageListener" ref="messageListener"/>
    <property name="transactionManager" ref="transactionManager"/>
</bean>

<bean id="playerStatsListener parent="parentContainer">
    <property name="destination" ref="playerStatsQueue"/>
    <property name="listener" ref="playerStatsService"/> 
    <property name="concurrency" value="100"/>         
</bean>
于 2014-02-18T21:32:24.827 に答える