0
<bean id="myTopic" class="org.apache.activemq.command.ActiveMQTopic">
    <property name="physicalName" value="feed.topic" />
</bean>

<bean id="myConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
    <property name="brokerURL" value="failover:tcp://localhost:61616" />
</bean>

<bean id="myJmsTemplate" class="org.springframework.jms.core.JmsTemplate">
    <property name="connectionFactory" ref="myConnectionFactory" />
    <property name="defaultDestination" ref="myTopic" />
</bean>

<bean id="sender" class="com.feed.publish.PublishMessages">
    <property name="jmsTemplate" ref="myJmsTemplate" />
</bean>

メッセージをキューに公開できるSpringFrameworkを使用して上記を設定しました。ただし、activemqインスタンスがプロセスの途中で終了した場合は、接続が再確立されるまでメッセージをディスク/ファイルに書き込みたいと思います。activemqのWebサイトからサンプルコードを見つけましたが、これを現在のセットアップに統合する方法がわかりません。

<amq:broker useJmx="true" persistent="true" brokerName="localhost">
    <amq:persistenceAdapter>
        <amq:kahaPersistenceAdapter directory="activemq-data"
            maxDataFileLength="33554432" />
    </amq:persistenceAdapter>
    <amq:transportConnectors>
        <amq:transportConnector name="vm" uri="vm://localhost" />
    </amq:transportConnectors>
</amq:broker>

誰かが私がこれらの2つのスタイルをマージする方法を教えてもらえますか?ありがとう

4

1 に答える 1

0

AMQ persistenceAdapter構成は、AMQブローカーがクライアントではなくディスクにメッセージを永続化できるようにするためのものです。ブローカー接続が終了した場合、クライアントコードは例外をキャッチし、メッセージをディスクに書き込み、後で再生する手段を提供する必要があります。

これらの方針に沿って、私は通常、Apache Camelの例外処理ファイルコンポーネントを使用して、これらのタイプのシナリオを処理します...

于 2012-11-06T23:06:31.333 に答える