85.2. オプション

次のすべてのオプションは、disruptor: および interruptor-vm: コンポーネントの両方で有効です。

Disruptor コンポーネントは、以下に示す 8 個のオプションをサポートしています。

名前説明デフォルトタイプ

defaultConcurrent Consumers (consumer)

同時コンシューマーのデフォルト数を設定するには

1

int

defaultMultiple Consumers (consumer)

複数のコンシューマーのデフォルト値を設定するには

false

boolean

defaultProducerType (producer)

DisruptorProducerType のデフォルト値を設定するにはデフォルト値は Multi です。

Multi

DisruptorProducerType

defaultWaitStrategy (consumer)

DisruptorWaitStrategy のデフォルト値を設定するにはデフォルト値は Blocking です。

Blocking

DisruptorWaitStrategy

defaultBlockWhenFull (producer)

フル時のブロックのデフォルト値を設定するにはデフォルト値は true です。

true

boolean

queueSize (Common)

非推奨 リングバッファーサイズを設定する場合

 

int

bufferSize (common)

リングバッファーサイズを設定する場合

1024

int

resolveProperty Placeholders (advanced)

起動時にコンポーネントがプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。

true

boolean

Disruptor エンドポイントは、URI 構文を使用して設定されます。

disruptor:name

パスおよびクエリーパラメーターを使用します。

85.2.1. パスパラメーター (1 個のパラメーター):

名前説明デフォルトタイプ

name

必須 キューの名前

 

String

85.2.2. クエリーパラメーター (12 パラメーター)

名前説明デフォルトタイプ

size (common)

Disruptors リングバッファーの最大容量は、実質的に 2 の累乗に増加します。注意: このオプションを使用する場合は、サイズを決定するキュー名で作成される最初のエンドポイントに注意してください。すべてのエンドポイントが同じサイズを使用するようにするには、すべてのエンドポイント、または作成される最初のエンドポイントでサイズオプションを設定します。

1024

int

bridgeErrorHandler (consumer)

コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。

false

boolean

concurrentConsumers (consumer)

エクスチェンジを処理する同時スレッドの数。

1

int

multipleConsumers (consumer)

複数のコンシューマーを許可するかどうかを指定します。有効にすると、Publish-Subscribe メッセージングに Disruptor を使用できます。つまり、メッセージをキューに送信し、各コンシューマーにメッセージのコピーを受信させることができます。有効にすると、このオプションはすべてのコンシューマーエンドポイントで指定する必要があります。

false

boolean

waitStrategy (consumer)

コンシューマースレッドが新しいエクスチェンジの公開を待機するために使用するストラテジーを定義します。許可されるオプションは次のとおりです:Blocking、Sleeping、BusySpin、および Yielding。

Blocking

DisruptorWaitStrategy

exceptionHandler (consumer)

コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。

 

ExceptionHandler

exchangePattern (consumer)

コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。

 

ExchangePattern

blockWhenFull (producer)

フル Disruptorにメッセージを送信するスレッドが、リングバッファーの容量がなくなるまでブロックするかどうか。デフォルトでは、呼び出しスレッドはブロックされ、メッセージが受け入れられるまで待機します。このオプションを無効にすると、キューがいっぱいであることを示す例外が出力されます。

false

boolean

producerType (producer)

Disruptor で許可されるプロデューサーを定義します。使用できるオプションは次のとおりです。Multi は複数のプロデューサーを許可し、Single は特定の最適化を有効にします。これは、1 つの並行プロデューサー (1 つのスレッド上または同期されている) がアクティブな場合にのみ許可されます。

Multi

DisruptorProducerType

timeout (producer)

プロデューサーが非同期タスクの完了の待機を停止するまでのタイムアウト (ミリ秒単位)。0 または負の値を使用して、タイムアウトを無効にすることができます。

30000

long

waitForTaskToComplete (producer)

続行する前に呼び出し元が非同期タスクの完了を待つかどうかを指定するオプション。次の 3 つのオプションがサポートされています: Always、Never、または IfReplyExpected。最初の 2 つの値は一目瞭然です。最後の値 IfReplyExpected は、メッセージが Request Reply ベースの場合にのみ待機します。

IfReplyExpected

WaitForTaskToComplete

synchronous (advanced)

同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。

false

boolean