2017-10-19 8 views
1

私たちのソリューションでEIPパターンを実装するためにApache camelを使用することを検討しています。私たちの要件は、障害から回復できるフォールトトレラントシステムを構築することです。Apache Camel - JVMクラッシュから復旧する

私は、Apache Camel(デッドレターチャネル)で利用可能なネイティブエラー処理機能を理解しており、私の要件を満たしています。

しかし、JVMクラッシュなどの致命的なエラーから回復できるように、私たちのソリューションをどのように設定するかはわかりません。

JVMクラッシュ後にCamelアプリケーションを最後の既知の状態から再起動させる最良の方法は、システムの状態を維持するために永続的なキューを使用しないと考えますか?

私はSpring Integrationが永続的なチャネルを作成するための設定を提供していると思います。 Apache Camelも同様の設定をサポートしていますか?

答えて

1

はい、永続ストレージにメッセージングを使用できるため、JVMクラッシュに耐えるフォールトトレラントアプリケーションを構築できます。

永続ストレージとして使用することを選択したものを選択します。たとえば、Apache ActiveMQ/ArtemisのようなJMSメッセージブローカーを使用して、Camel JMSコンポーネントを使用して、トランザクションJMSを使用して、メッセージが正常に処理されない限り、メッセージが非認可されないようにすることができます。メッセージは依然としてブローカ上にあり、JVMが起動して再度実行されたときに再処理することができます。

しかし、フォールトトレラントシステムを設計する方法はさまざまです。 Apache Camelはこの点でオープンであり、自由を許しています。

関連する問題