25.3. 追加の Camel Quarkus 設定
25.3.1. 特定のエンドポイントから消費するコンシューマがクラスタ内で 1 つだけであること リンクのコピーリンクがクリップボードにコピーされました!
同じルートが複数の JVM にデプロイされている場合、このエクステンションを マスターのエクステンション と組み合わせて使用すると便利な場合があります。このようなセットアップでは、キャメルマスター namespace 全体で一度に 1 つのコンシューマーがアクティブになります。
たとえば、以下のルートを複数の JVM にデプロイするとします。
from("master:ns:timer:test?period=100").log("Timer invoked on a single JVM at a time");
from("master:ns:timer:test?period=100").log("Timer invoked on a single JVM at a time");
以下のようなプロパティーを使用して、ファイルクラスターサービスを有効にすることができます。
quarkus.camel.cluster.file.enabled = true quarkus.camel.cluster.file-root = target/cluster-folder-where-lock-file-will-be-held
quarkus.camel.cluster.file.enabled = true
quarkus.camel.cluster.file-root = target/cluster-folder-where-lock-file-will-be-held
その結果、1 つのコンシューマーが ns
camel マスター namespace 全体でアクティブになります。これは、ある時点で、1 つのタイマーだけがすべての JVM 間でエクスチェンジを生成することを意味します。つまり、メッセージは一度に 1 つの JVM で 100 ミリ秒ごとにログに記録されます。
ファイルクラスターサービスは、quarkus.camel.cluster.file.*
プロパティーを微調整できます。
設定プロパティー | タイプ | デフォルト |
---|---|---|
quarkus.camel.cluster.file.* 設定に従って、ファイルロッククラスターサービスを自動的に設定するかどうか。 |
|
|
クラスターサービス ID (デフォルトは null)。 |
| |
ルートパス (デフォルトは null)。 |
| |
サービス検索の順序/優先度 (デフォルトは 2147482647)。 |
| |
ロックの取得を開始するまでの待機時間 (デフォルトは 1000 ミリ秒)。 |
| |
ロックの取得を試みるまでの待機時間 (デフォルトは 10000 ミリ秒)。 |
| |
サービスに関連付けられたカスタム属性 (デフォルトは空のマップ)。 |
|
ビルド時に修正される設定プロパティー。その他の設定プロパティーはすべて、ランタイム時にオーバーライドが可能です。