126.4. コンポーネントオプション
Spring RabbitMQ コンポーネントは、以下に示す 29 のオプションをサポートしています。
| 名前 | 説明 | デフォルト | 型 |
|---|---|---|---|
| amqpAdmin (common) | Autowired 要素 (キュー、エクスチェンジ、バインディング) の自動宣言に使用するオプションの AMQP 管理サービス。 | AmqpAdmin | |
| connectionFactory (common) | Autowired 使用する接続ファクトリー。コンポーネントまたはエンドポイントで接続ファクトリーを設定する必要があります。 | ConnectionFactory | |
| testConnectionOnStartup (common) | 起動時に接続をテストするかどうかを指定します。これにより、Camel の起動時に、すべての JMS consumer が JMS ブローカーへの有効な接続を持つことが保証されます。接続を許可できない場合、Camel は起動時に例外を出力します。これにより、接続に失敗した状態で Camel が開始されなくなります。JMS producer もテストされています。 | false | boolean |
| autoDeclare (consumer) | コンシューマーが開始時に Exchange、キュー、ルーティングキー間のバインディングを自動宣言するかどうかを指定します。これを有効にすると、ブローカー上でエクスチェンジ、キュー、バインディングを簡単に確立できるようになるため、開発に適しています。 | false | boolean |
| autoStartup (consumer) | consumer コンテナーを自動起動するかどうかを指定します。 | true | boolean |
| bridgeErrorHandler (consumer) | consumer の Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、consumer が受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、consumer は org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
| deadLetterExchange (consumer) | デッドレターエクスチェンジの名前。 | String | |
| deadLetterExchangeType (consumer) | デッドレターエクスチェンジの種類。 列挙値:
| direct | String |
| deadLetterQueue (consumer) | 配信不能キューの名前。 | String | |
| deadLetterRoutingKey (consumer) | デッドレターエクスチェンジのルーティングキー。 | String | |
| maximumRetryAttempts (consumer) | Camel がメッセージの処理に失敗した場合に、Rabbitmq コンシューマーが同じメッセージを再試行する回数。 | 5 | int |
| rejectAndDontRequeue (consumer) | Rabbitmq コンシューマーが再キューに入れずにメッセージを拒否する必要があるかどうか。これにより、ブローカーがそのように設定されている場合、失敗したメッセージを Dead Letter Exchange/Queue に送信できるようになります。 | true | boolean |
| retryDelay (consumer) | Camel が処理に失敗したメッセージを再配信するまでに Rabbitmq コンシューマーが待機する遅延 (ミリ秒)。 | 1000 | int |
| concurrentConsumers (consumer (advanced)) | コンシューマーの数。 | 1 | int |
| errorHandler (consumer (advanced)) | カスタム ErrorHandler を使用して、メッセージリスナー (consumer) からの例外を処理します。 | ErrorHandler | |
| listenerContainerFactory (consumer (advanced)) | カスタムファクトリーを使用して、コンシューマーがメッセージを受信するために使用する ListenerContainer を作成および設定します。 | ListenerContainerFactory | |
| maxConcurrentConsumers (consumer (advanced)) | コンシューマーの最大数 (SMLC でのみ使用可能)。 | Integer | |
| messageListenerContainerType (consumer (advanced)) | MessageListenerContainer のタイプ。 列挙値:
| DMLC | String |
| prefetchCount (consumer (advanced)) | 単一のリクエストで各コンシューマーに送信するメッセージの数をブローカーに指示します。多くの場合、これはスループットを向上させるために非常に高く設定できます。 | 250 | int |
| retry (consumer (advanced)) | 使用するカスタム再試行設定。これが設定されている場合は、再試行のための maximumRetryAttempts などの他の設定は使用されません。 | RetryOperationsInterceptor | |
| shutdownTimeout (consumer (advanced)) | コンテナーの停止後にワーカーを待機する時間 (ミリ秒単位)。シャットダウン信号が届いたときにワーカーがアクティブである場合は、このタイムアウト内に終了できる限り、ワーカーは処理を終了することができます。 | 5000 | long |
| allowNullBody (producer) | ボディーのないメッセージの送信を許可するかどうか。このオプションが false で、メッセージ本文が null の場合は、MessageConversionException がスローされます。 | false | boolean |
| lazyStartProducer (producer) | 最初のメッセージで producer をレイジーに起動すべきかどうか。レイジーに起動することで、起動時に producer が失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、producer の作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | boolean |
| replyTimeout (producer) | リプライメッセージ、返信メッセージ要求/応答メッセージングの実行時に応答メッセージを待機するときに使用されるタイムアウトをミリ秒単位で指定します。デフォルト値は 5 秒です。負の値は、無期限のタイムアウトを示します。 | 5000 | long |
| autowiredEnabled (advanced) | 自動ワイヤリングが有効になっているかどうか。これは、コンポーネントで設定される一致するタイプのインスタンスが 1 つあるかどうかを検出するためにレジストリーを検索することで、自動ワイアリングオプションに使用されます (オプションは自動ワイアとマーク付けされる必要があります)。これは、JDBC データソース、JMS 接続ファクトリー、AWS クライアントなどの自動設定に使用できます。 | true | boolean |
| ignoreDeclarationExceptions (advanced) | 宣言時に不一致のプロパティーなどの例外を無視するように設定します。 | false | boolean |
| messageConverter (advanced) | カスタム MessageConverter を使用して、org.springframework.amqp.core.Message との間のマッピング方法を制御できるようにします。 | MessageConverter | |
| messagePropertiesConverter (advanced) | カスタム MessagePropertiesConverter を使用して、org.springframework.amqp.core.MessageProperties との間のマッピング方法を制御できるようにします。 | MessagePropertiesConverter | |
| headerFilterStrategy (filter) | カスタムの org.apache.camel.spi.HeaderFilterStrategy を使用して、Camel メッセージとの間でヘッダーをフィルターします。 | HeaderFilterStrategy |