242.2. オプション
Netty4 コンポーネントは、以下に示す 6 個のオプションをサポートしています。
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
maximumPoolSize (advanced) | 使用中の場合の EventExecutorGroup のスレッドプールサイズ。デフォルト値は 16 です。 | 16 | int |
configuration (advanced) | エンドポイントの作成時に NettyConfiguration を設定として使用するには。 | NettyConfiguration | |
executorService (advanced) | 指定された EventExecutorGroup を使用します。 | EventExecutorGroup | |
useGlobalSslContext Parameters (security) | グローバル SSL コンテキストパラメーターの使用を有効にします。 | false | boolean |
sslContextParameters (security) | SSLContextParameters を使用してセキュリティーを設定します。 | SSLContextParameters | |
resolveProperty Placeholders (advanced) | 起動時にコンポーネントがプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。 | true | boolean |
Netty4 エンドポイントは、URI 構文を使用して設定されます。
netty4:protocol:host:port
パスおよびクエリーパラメーターを使用します。
242.2.1. パスパラメーター (3 パラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
protocol | 必須 tcp または udp の使用するプロトコル。 | String | |
host | 必須 ホスト名。コンシューマーの場合、ホスト名は localhost または 0.0.0.0 です。プロデューサーの場合、ホスト名は接続先のリモートホストです。 | String | |
port | 必須 ホストのポート番号 | int |
242.2.2. クエリーパラメーター (72 個のパラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
disconnect (common) | 使用直後に Netty Channel を切断 (クローズ) するかどうか。コンシューマーとプロデューサーの両方に使用できます。 | false | boolean |
keepAlive (common) | 非アクティブのためにソケットが閉じられないようにするための設定 | true | boolean |
reuseAddress (common) | ソケットの多重化を容易にするための設定 | true | boolean |
reuseChannel (common) | このオプションにより、プロデューサとコンシューマー (クライアントモード) は、エクスチェンジを処理するライフサイクルで同じ Netty チャネルを再利用できます。これは、Camel ルートでサーバーを複数回呼び出す必要があり、同じネットワーク接続を使用したい場合に便利です。これを使用すると、チャネルはエクスチェンジが完了するまで接続プールに返されません。または、切断オプションが true に設定されている場合は切断されます。再利用されたチャネルは、キー NettyConstants#NETTY_CHANNEL を持つエクスチェンジプロパティーとしてエクスチェンジに保存されます。これにより、ルーティング中にチャネルを取得して使用することもできます。 | false | boolean |
sync (common) | エンドポイントを一方向または要求応答として設定する設定 | true | boolean |
tcpNoDelay (common) | TCP プロトコルのパフォーマンスを向上させるための設定 | true | boolean |
bridgeErrorHandler (consumer) | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、consumer は org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
broadcast (consumer) | UDP 経由のマルチキャストを選択するための設定 | false | boolean |
clientMode (consumer) | clientMode が true の場合、netty コンシューマーはアドレスを TCP クライアントとして接続します。 | false | boolean |
reconnect (consumer) | コンシューマーの clientMode でのみ使用されます。これが有効になっている場合、コンシューマーは切断時に再接続を試みます | true | boolean |
reconnectInterval (consumer) | 再接続し、clientMode が有効になっている場合に使用されます。再接続を試みる間隔 (ミリ秒) | 10000 | int |
backlog (consumer) | netty コンシューマー (サーバー) のバックログを設定できます。バックログは、OS によってはベストエフォートであることに注意してください。このオプションを 200、500、1000 などの値に設定すると、TCP スタックに受け入れキューの長さが通知されます。このオプションが設定されていない場合、バックログは OS の設定に依存します。 | int | |
bossCount (consumer) | netty が nio モードで動作する場合、Netty のデフォルトの bossCount パラメーターである 1 を使用します。ユーザーはこの操作を使用して、Netty のデフォルトの bossCount をオーバーライドできます | 1 | int |
bossGroup (consumer) | NettyEndpoint を介してサーバー側の新しい接続を処理するために使用できる BossGroup を設定します | EventLoopGroup | |
disconnectOnNoReply (consumer) | 同期が有効になっている場合、このオプションは、返信がない場合に NettyConsumer を切断するかどうかを指定します。 | true | boolean |
exceptionHandler (consumer) | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、consumer は例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
exchangePattern (consumer) | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。 | ExchangePattern | |
nettyServerBootstrapFactory (consumer) | カスタム NettyServerBootstrapFactory を使用する場合 | NettyServerBootstrap Factory | |
networkInterface (consumer) | UDP を使用する場合、このオプションを使用してネットワークインターフェイスをその名前で指定できます (マルチキャストグループに参加するための eth0 など)。 | String | |
noReplyLogLevel (consumer) | 同期が有効になっている場合、このオプションは NettyConsumer がログに記録するときに使用するログレベルを決定し、返信する応答がありません。 | WARN | LoggingLevel |
serverClosedChannel ExceptionCaughtLogLevel (consumer) | サーバー (NettyConsumer) が java.nio.channels.ClosedChannelException をキャッチすると、このログレベルを使用してログに記録されます。これは、クローズドチャネル例外のログ記録を回避するために使用されます。これは、クライアントが突然切断され、Netty サーバーでクローズド例外のフラッドが発生する可能性があるためです。 | DEBUG | LoggingLevel |
serverExceptionCaughtLog Level (consumer) | サーバー (NettyConsumer) が例外をキャッチすると、このログレベルを使用してログに記録されます。 | WARN | LoggingLevel |
serverInitializerFactory (consumer) | カスタム ServerInitializerFactory を使用する場合 | ServerInitializer ファクトリー | |
usingExecutorService (consumer) | 順序付けられたスレッドプールを使用して、イベントが同じチャネルで順番に処理されるかどうか。 | true | boolean |
connectTimeout (producer) | ソケット接続が使用可能になるまで待機する時間。値はミリ秒単位です。 | 10000 | int |
requestTimeout (producer) | リモートサーバーを呼び出すときに、Netty プロデューサーのタイムアウトを使用できるようにします。デフォルトでは、タイムアウトは使用されていません。値はミリ秒単位なので、たとえば 30000 は 30 秒です。requestTimeout は、Netty の ReadTimeoutHandler を使用してタイムアウトをトリガーしています。 | long | |
clientInitializerFactory (producer) | カスタム ClientInitializerFactory を使用する場合 | ClientInitializer ファクトリー | |
correlationManager (producer) | カスタム相関マネージャーを使用して、netty プロデューサーで要求/応答を使用するときに、要求メッセージと応答メッセージがどのようにマップされるかを管理します。これは、要求メッセージと応答メッセージの両方に相関 ID がある場合など、要求を応答と一緒にマップする方法がある場合にのみ使用してください。これは、netty の同じチャネル (別名接続) で同時メッセージを多重化したい場合に使用できます。これを行う場合、リクエストメッセージと応答メッセージを相互に関連付ける方法が必要です。これにより、継続してルーティングされる前に、進行中の Camel エクスチェンジに正しい応答を格納できます。カスタム相関マネージャーを作成するときは、TimeoutCorrelationManagerSupport を拡張することを推奨します。これにより、タイムアウトや他の方法で実装する必要があるその他の複雑さもサポートされます。詳細は、producerPoolEnabled オプションも参照してください。 | NettyCamelState CorrelationManager | |
lazyChannelCreation (producer) | Camel プロデューサーの起動時にリモートサーバーが稼働していない場合は、例外を回避するためにチャネルを遅延作成できます。 | true | boolean |
producerPoolEnabled (producer) | プロデューサープールが有効かどうか。重要: これをオフにすると、リクエスト/リプライを実行している場合にも、単一の共有接続が producer に使用されます。つまり、返信が順不同で戻ってきた場合、インタリーブされた応答に問題が生じる可能性があります。したがって、Camel でメッセージの処理を継続するロールを持つ Camel コールバックに応答を適切に関連付けることができるように、要求メッセージと応答メッセージの両方に相関 ID が必要です。これを行うには、NettyCamelStateCorrelationManager を相関マネージャーとして実装し、correlationManager オプションを介して設定する必要があります。詳細は、correlationManager オプションも参照してください。 | true | boolean |
producerPoolMaxActive (producer) | 特定の時間にプールによって割り当てられる (クライアントにチェックアウトされるか、チェックアウトを待機するアイドル) オブジェクトの数に上限を設定します。無制限の場合は負の値を使用します。 | -1 | int |
producerPoolMaxIdle (producer) | プール内のアイドルインスタンス数の上限を設定します。 | 100 | int |
producerPoolMinEvictable Idle (producer) | アイドル状態のオブジェクト Evictor によるエビクションの対象となる前に、オブジェクトがプール内でアイドル状態になる最小時間 (ミリ単位の値) を設定します。 | 300000 | long |
producerPoolMinIdle (producer) | evictor スレッド (アクティブな場合) が新しいオブジェクトを生成する前に、プロデューサープールで許可されるインスタンスの最小数を設定します。 | int | |
udpConnectionlessSending (producer) | このオプションは接続のない UDP 送信をサポートします。接続された udp send は、受信ポートでリッスンしている人がいない場合、PortUnreachableException を受け取ります。 | false | boolean |
useByteBuf (producer) | useByteBuf が true の場合、netty プロデューサーはメッセージ本文を送信する前に ByteBuf に変換します。 | false | boolean |
allowSerializedHeaders (advanced) | transferExchange が true の場合にのみ TCP に使用されます。true に設定すると、ヘッダーとプロパティーのシリアル化可能なオブジェクトが交換に追加されます。そうしないと、Camel はシリアル化できないオブジェクトを除外し、WARN レベルでログに記録します。 | false | boolean |
bootstrapConfiguration (advanced) | このエンドポイントを設定するためにカスタム設定された NettyServerBootstrapConfiguration を使用するには。 | NettyServerBootstrap 設定 | |
channelGroup (advanced) | 明示的な ChannelGroup を使用するには。 | ChannelGroup | |
nativeTransport (advanced) | NIO の代わりにネイティブトランスポートを使用するかどうか。ネイティブトランスポートはホストオペレーティングシステムを利用し、一部のプラットフォームでのみサポートされます。使用しているホストオペレーティングシステムの netty JAR を追加する必要があります。詳細は、http://netty.io/wiki/native-transports.html を参照してください。 | false | boolean |
options (advanced) | オプションを使用して、追加の netty オプションを設定できます。接頭辞として。たとえば、netty オプション child.keepAlive=false を設定するには、option.child.keepAlive=false とします。使用可能なオプションは、Netty のドキュメントを参照してください。 | Map | |
receiveBufferSize (advanced) | インバウンド通信中に使用される TCP/UDP バッファーサイズ。サイズはバイトです。 | 65536 | int |
receiveBufferSizePredictor (advanced) | バッファーサイズプレディクターを設定します。詳細は、Jetty のドキュメントとこのメールスレッドを参照してください。 | int | |
sendBufferSize (advanced) | アウトバウンド通信中に使用される TCP/UDP バッファーサイズ。サイズはバイトです。 | 65536 | int |
synchronous (advanced) | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。 | false | boolean |
transferExchange (advanced) | TCP にのみ使用されます。ボディーだけでなく、ネットワーク経由でエクスチェンジを転送することができます。In body、Out body、fault body、In ヘッダー、Out ヘッダー、Fault ヘッダー、exchange プロパティー、exchange 例外フィールドが転送されます。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化できないオブジェクトを除外し、WARN レベルでログに記録します。 | false | boolean |
udpByteArrayCodec (advanced) | UDP 専用です。Java シリアライゼーションプロトコルの代わりにバイト配列コーデックの使用を有効にした場合。 | false | boolean |
workerCount (advanced) | netty が nio モードで動作する場合、Netty のデフォルトの workerCount パラメーター cpu_core_threads x 2 を使用します。ユーザーはこのオプションを使用して、Netty のデフォルトの workerCount をオーバーライドできます。 | int | |
workerGroup (advanced) | ボススレッドプールとして明示的な EventLoopGroup を使用するには。たとえば、スレッドプールを複数の consumer または producer と共有する場合などです。デフォルトでは、各 consumer または producer には、2 x CPU カウントのコアスレッドを備えた独自のワーカープールがあります。 | EventLoopGroup | |
allowDefaultCodec (codec) | netty コンポーネントは、encoder/decoder が null で textline が false の場合、デフォルトのコーデックをインストールします。allowDefaultCodec を false に設定すると、netty コンポーネントがデフォルトコーデックをフィルターチェーンの最初の要素としてインストールするのを防ぎます。 | true | boolean |
autoAppendDelimiter (codec) | テキストラインコーデックを使用して送信するときに、不足している終了区切り文字を自動追加するかどうか。 | true | boolean |
decoder (codec) | 非推奨 受信ペイロードの特別なマーシャリングを実行するために使用できるカスタム ChannelHandler クラス。 | ChannelHandler | |
decoderMaxLineLength (codec) | テキストラインコーデックに使用する行の最大長。 | 1024 | int |
decoders (codec) | 使用するデコーダーのリスト。コンマで区切られた値を持つ文字列を使用して、値をレジストリーで検索することができます。Camel がルックアップする必要があることを認識できるように、値の前に # を付けることを忘れないでください。 | String | |
delimiter (codec) | テキストラインコーデックに使用する区切り文字。可能な値は LINE と NULL です。 | LINE | TextLineDelimiter |
encoder (codec) | 非推奨 送信ペイロードの特別なマーシャリングを実行するために使用できるカスタム ChannelHandler クラス。 | ChannelHandler | |
encoders (codec) | 使用するエンコーダーのリスト。コンマで区切られた値を持つ文字列を使用して、値をレジストリーで検索することができます。Camel がルックアップする必要があることを認識できるように、値の前に # を付けることを忘れないでください。 | String | |
encoding (codec) | テキスト行コーデックに使用するエンコーディング (文字セット名)。指定しない場合、Camel は JVM のデフォルトの文字セットを使用します。 | String | |
textline (codec) | TCP にのみ使用されます。コーデックが指定されていない場合、このフラグを使用して、テキスト行ベースのコーデックを示すことができます。指定されていない場合、または値が false の場合、オブジェクトのシリアル化は TCP 経由であると想定されます。 | false | boolean |
enabledProtocols (security) | SSL を使用するときに有効にするプロトコル | TLSv1,TLSv1.1,TLSv1.2 | String |
keyStoreFile (security) | 暗号化に使用されるクライアント側の証明書キーストア | File | |
keyStoreFormat (security) | ペイロードの暗号化に使用されるキーストア形式。設定されていない場合、デフォルトは JKS | String | |
keyStoreResource (security) | 暗号化に使用されるクライアント側の証明書キーストア。デフォルトではクラスパスからロードされますが、classpath:、file:、または http: をプレフィックとして指定して、異なるシステムからリソースをロードすることもできます。 | String | |
needClientAuth (security) | SSL の使用時にサーバーがクライアント認証を必要とするかどうかを設定します。 | false | boolean |
パスフレーズ (security) | SSH を使用して送信されたペイロードを暗号化/復号化するために使用するパスワード設定 | String | |
securityProvider (security) | ペイロードの暗号化に使用するセキュリティープロバイダー。設定されていない場合、デフォルトは SunX509 です。 | String | |
ssl (security) | このエンドポイントに SSL 暗号化を適用するかどうかを指定する設定 | false | boolean |
sslClientCertHeaders (security) | 有効で SSL モードの場合、Netty コンシューマーは、サブジェクト名、発行者名、シリアル番号、有効な日付範囲などのクライアント証明書に関する情報を含むヘッダーで Camel メッセージを強化します。 | false | boolean |
sslContextParameters (security) | SSLContextParameters を使用してセキュリティーを設定します。 | SSLContextParameters | |
sslHandler (security) | SSL ハンドラーを返すために使用できるクラスへの参照 | SslHandler | |
trustStoreFile (security) | 暗号化に使用されるサーバー側の証明書キーストア | File | |
trustStoreResource (security) | 暗号化に使用されるサーバー側の証明書キーストア。デフォルトではクラスパスからロードされますが、classpath:、file:、または http: をプレフィックとして指定して、異なるシステムからリソースをロードすることもできます。 | String |