91.5. エンドポイントオプション
Netty HTTP エンドポイントは、URI 構文を使用して設定されます。
netty-http:protocol://host:port/path
パスおよびクエリーパラメーターを使用します。
91.5.1. パスパラメーター (4 パラメーター) リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | 説明 | デフォルト | タイプ |
|---|---|---|---|
| protocol (common) | 必須 使用するプロトコル。http、https、プロキシーのいずれか (コンシューマー専用オプション)。 列挙値:
| String | |
| host (Common) | 必須 localhost などのローカルホスト名、またはコンシューマーの場合は 0.0.0.0。プロデューサーを使用する場合のリモート HTTP サーバーのホスト名。 | String | |
| port (Common) | ホストのポート番号。 | int | |
| path (共通) | リソースパス。 | String |
91.5.2. クエリーパラメーター (85 パラメーター) リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | 説明 | デフォルト | タイプ |
|---|---|---|---|
| bridgeEndpoint (common) | オプションが true の場合、プロデューサーは NettyHttpConstants.HTTP_URI header ヘッダーを無視し、エンドポイントの URI をリクエストに使用します。また、throwExceptionOnFailure を false に設定して、プロデューサーがすべての障害応答を送り返すようにすることもできます。ブリッジモードで動作するコンシューマーは、gzip 圧縮と WWW URL フォームエンコーディングをスキップします (消費される Exchange に Exchange.SKIP_GZIP_ENCODING と Exchange.SKIP_WWW_FORM_URLENCODED ヘッダーを追加することで行います)。 | false | boolean |
| disconnect (Common) | 使用直後に Netty Channel を切断 (クローズ) するかどうか。consumer と producer の両方に使用できます。 | false | boolean |
| keepAlive (共通) | 非アクティブのためにソケットが閉じられないようにするための設定。 | true | boolean |
| reuseAddress (共通) | ソケットの多重化を容易にするための設定。 | true | boolean |
| reuseChannel (共通) | このオプションにより、producer と consumer (クライアントモード) は、エクスチェンジを処理するライフサイクルで同じ Netty チャネルを再利用できます。これは、Camel ルートでサーバーを複数回呼び出す必要があり、同じネットワーク接続を使用したい場合に便利です。これを使用すると、チャネルはエクスチェンジが完了するまで接続プールに返されません。または、切断オプションが true に設定されている場合は切断されます。再利用されたチャネルは、キー NettyConstants#NETTY_CHANNEL を持つエクスチェンジプロパティーとしてエクスチェンジに保存されます。これにより、ルーティング中にチャネルを取得して使用することもできます。 | false | boolean |
| sync (共通) | エンドポイントを一方向または要求応答として設定する設定。 | true | boolean |
| tcpNoDelay (共通) | TCP プロトコルのパフォーマンスを向上させるための設定。 | true | boolean |
| matchOnUriPrefix (consumer) | 完全に一致するものが見つからない場合に、Camel が URI 接頭辞を照合してターゲットコンシューマーを見つけようとするかどうか。 | false | boolean |
| muteException (consumer) | 有効にすると、エクスチェンジが consumer側で処理に失敗した場合、レスポンスの本文には例外のスタックトレースが含まれません。 | false | boolean |
| send503whenSuspended (consumer) | コンシューマーが中断されたときに HTTP ステータスコード 503 を返すかどうか。このオプションが false の場合、コンシューマーが中断されたときに Netty Acceptor がバインド解除されるため、クライアントはそれ以上接続できません。 | true | boolean |
| backlog (consumer (上級)) | netty consumer (server) のバックログを設定できます。バックログは、OS によってはベストエフォートであることに注意してください。このオプションを 200、500、1000 などの値に設定すると、TCP スタックに受け入れキューの長さが通知されます。このオプションが設定されていない場合、バックログは OS の設定に依存します。 | int | |
| bossCount (consumer (上級)) | netty が nio モードで動作する場合、Netty のデフォルトの BossCount パラメーターである 1 を使用します。ユーザーはこのオプションを使用して、Netty のデフォルトの BossCount をオーバーライドできます。 | 1 | int |
| bossGroup (consumer (上級)) | NettyEndpoint を介してサーバー側の新しい接続を処理するために使用できる BossGroup を設定します。 | EventLoopGroup | |
| bridgeErrorHandler (consumer (上級)) | consumer の Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、consumer が受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、consumer は org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
| chunkedMaxContentLength (consumer (advanced)) | Netty HTTP サーバーで受信したチャンクフレームごとのコンテンツの最大長 (バイト単位) の値。 | 1048576 | int |
| compression (consumer (advanced)) | クライアントが HTTP ヘッダーからサポートしている場合、Netty HTTP サーバーでの圧縮に gzip/deflate の使用を許可します。 | false | boolean |
| disconnectOnNoReply (consumer (上級)) | 同期が有効になっている場合、このオプションは、返信がない場合に NettyConsumer を切断するかどうかを指定します。 | true | boolean |
| exceptionHandler (consumer (上級)) | consumer によるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、consumer は例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
| exchangePattern (consumer (上級)) | consumer がエクスチェンジを作成する際に交換パターンを設定します。 列挙値:
| ExchangePattern | |
| httpMethodRestrict (consumer (advanced)) | Netty HTTP コンシューマーで HTTP メソッドを無効にします。コンマ区切りで複数指定できます。 | String | |
| logWarnOnBadRequest (consumer (advanced)) | HTTP リクエストのデコードが失敗し、HTTP ステータス 400 (不正なリクエスト) が返された場合に、Netty HTTP サーバーが WARN をログに記録するかどうか。 | true | boolean |
| mapHeaders (consumer (advanced)) | このオプションを有効にすると、Netty から Camel Message へのバインド中にヘッダーもマッピングされます (たとえば、ヘッダーとして Camel Message にも追加されます)。このオプションをオフにして、これを無効にすることができます。ヘッダーには、Netty HTTP リクエスト io.netty.handler.codec.http.HttpRequest インスタンスを返すメソッド getHttpRequest() を使用して、org.apache.camel.component.netty.http.NettyHttpMessage メッセージから引き続きアクセスできます。 | true | boolean |
| maxChunkSize (consumer (advanced)) | コンテンツまたは各チャンクの最大長。コンテンツの長さ (または各チャンクの長さ) がこの値を超える場合、コンテンツまたはチャンクは最大長が maxChunkSize の複数の io.netty.handler.codec.http.HttpContents に分割されます。io.netty.handler.codec.http.HttpObjectDecoder を参照してください。 | 8192 | int |
| maxHeaderSize (consumer (advanced)) | すべてのヘッダーの最大長。各ヘッダーの長さの合計がこの値を超えると、io.netty.handler.codec.TooLongFrameException が発生します。 | 8192 | int |
| maxInitialLineLength (consumer (advanced)) | 最初の行の最大長 (例: \\{code GET / HTTP/1.0} または \\{code HTTP/1.0 200 OK})。最初の行の長さがこの値を超える場合、TooLongFrameException が発生します。io.netty.handler.codec.http.HttpObjectDecoder を参照してください。 | 4096 | int |
| nettyServerBootstrapFactory (consumer (上級)) | カスタム NettyServerBootstrapFactory を使用するには。 | NettyServerBootstrapFactory | |
| nettySharedHttpServer (consumer (advanced)) | 共有 Netty HTTP サーバーを使用するには。詳細については、Netty HTTP サーバーの例を参照してください。 | NettySharedHttpServer | |
| noReplyLogLevel (consumer (上級)) | 同期が有効になっている場合、このオプションは NettyConsumer がログに記録するときに使用するログレベルを決定し、返信する応答がありません。 列挙値:
| WARN | LoggingLevel |
| serverClosedChannelExceptionCaughtLogLevel (consumer (上級)) | サーバー (NettyConsumer) が java.nio.channels.ClosedChannelException をキャッチすると、このログレベルを使用してログに記録されます。これは、クローズドチャネル例外のログ記録を回避するために使用されます。これは、クライアントが突然切断され、Netty サーバーでクローズド例外のフラッドが発生する可能性があるためです。 列挙値:
| DEBUG | LoggingLevel |
| serverExceptionCaughtLogLevel (consumer (上級)) | サーバー (NettyConsumer) が例外をキャッチすると、このログレベルを使用してログに記録されます。 列挙値:
| WARN | LoggingLevel |
| serverInitializerFactory (consumer (上級)) | カスタム ServerInitializerFactory を使用するには。 | ServerInitializerFactory | |
| traceEnabled (consumer (上級)) | この Netty HTTP コンシューマーに対して HTTP TRACE を有効にするかどうかを指定します。デフォルトでは、TRACE はオフになっています。 | false | boolean |
| urlDecodeHeaders (consumer (advanced)) | このオプションを有効にすると、Netty から Camel Message へのバインド中にヘッダー値が URL デコードされます (たとえば、%20 はスペース文字になります。このオプションはデフォルトの org.apache.camel.component.netty.http.NettyHttpBinding で使用されるため、カスタム org.apache.camel.component.netty.http.NettyHttpBinding を実装する場合は、このオプションに従ってヘッダーをデコードする必要があることに注意してください。 | false | boolean |
| usingExecutorService (consumer (上級)) | 順序付けられたスレッドプールを使用して、イベントが同じチャネルで順番に処理されるかどうか。 | true | boolean |
| connectTimeout (producer) | ソケット接続が使用可能になるまで待機する時間。値はミリ秒単位です。 | 10000 | int |
| cookieHandler (producer) | HTTP セッションを維持するように Cookie ハンドラーを設定します。 | CookieHandler | |
| requestTimeout (producer) | リモートサーバーを呼び出すときに、Netty producer のタイムアウトを使用できるようにします。デフォルトでは、タイムアウトは使用されていません。値はミリ秒単位なので、たとえば 30000 は 30 秒です。requestTimeout は、Netty の ReadTimeoutHandler を使用してタイムアウトをトリガーしています。 | long | |
| throwExceptionOnFailure (producer) | リモートサーバーからの応答が失敗した場合に HttpOperationFailedException を出力することを無効にするオプション。これにより、HTTP ステータスコードに関係なくすべての応答を取得できます。 | true | boolean |
| clientInitializerFactory (producer (上級)) | カスタム ClientInitializerFactory を使用するには。 | ClientInitializerFactory | |
| lazyChannelCreation (producer (上級)) | Camel producer の起動時にリモートサーバーが稼働していない場合は、例外を回避するためにチャネルを遅延作成できます。 | true | boolean |
| lazyStartProducer (producer (上級)) | 最初のメッセージで producer をレイジーに起動すべきかどうか。レイジーに起動することで、起動時に producer が失敗し、それによりルートが失敗する可能性がある状況で、CamelContext およびルートの起動を許可します。レイジーな起動を延期すると、Camel のルーティングエラーハンドラー経由でメッセージのルーティング中に起動の失敗を処理できます。最初のメッセージが処理されるときに、producer の作成および起動に若干時間がかかり、合計処理時間が長くなる可能性があることに注意してください。 | false | boolean |
| okStatusCodeRange (producer (上級)) | 正常な応答と見なされるステータスコード。値は含まれます。複数の範囲をコンマで区切って定義できます (例: 200-204,209,301-304)。各範囲は、ダッシュを含む 1 つの数字または from-to である必要があります。デフォルトの範囲は 200 - 299 です。 | 200-299 | String |
| producerPoolBlockWhenExhausted (producer (advanced)) | blockWhenExhausted 設定属性の値を設定します。プールをすべて使用した (アクティブオブジェクトの上限に達した) ことで borrowObject() メソッドが呼び出された場合に、ブロックするかどうかを決定します。 | true | boolean |
| producerPoolEnabled (producer (上級)) | producer プールが有効かどうか。重要: これをオフにすると、リクエスト/リプライを実行している場合にも、単一の共有接続が producer に使用されます。つまり、返信が順不同で戻ってきた場合、インタリーブされた応答に問題が生じる可能性があります。したがって、Camel でメッセージの処理を継続するロールを持つ Camel コールバックに応答を適切に関連付けることができるように、要求メッセージと応答メッセージの両方に相関 ID が必要です。これを行うには、NettyCamelStateCorrelationManager を相関マネージャーとして実装し、correlationManager オプションを介して設定する必要があります。詳細は、correlationManager オプションも参照してください。 | true | boolean |
| producerPoolMaxIdle (producer (上級)) | プール内のアイドルインスタンス数の上限を設定します。 | 100 | int |
| producerPoolMaxTotal (producer (上級)) | 特定の時間にプールによって割り当てられる (クライアントにチェックアウトされるか、チェックアウトを待機するアイドル) オブジェクトの数に上限を設定します。無制限の場合は負の値を使用します。 | -1 | int |
| producerPoolMaxWait (producer (advanced)) | プールを使い切り、ProducerPoolBlockWhenExhausted が true の場合に、borrowObject() メソッドが例外をスローするまでの最大ブロック時間 (ミリ秒単位の値) を設定します。0 未満の場合、borrowObject() メソッドは無期限にブロックされる可能性があります。 | -1 | long |
| producerPoolMinEvictableIdle (producer (上級)) | アイドル状態のオブジェクト Evictor によるエビクションの対象となる前に、オブジェクトがプール内でアイドル状態になる最小時間 (ミリ単位の値) を設定します。 | 300000 | long |
| producerPoolMinIdle (producer (上級)) | evictor スレッド (アクティブな場合) が新しいオブジェクトを生成する前に、producer プールで許可されるインスタンスの最小数を設定します。 | int | |
| useRelativePath (producer (advanced)) | HTTP リクエストで相対パスを使用するかどうかを設定します。 | true | boolean |
| ホスト名検証 (セキュリティー) | SSLEngine でのホスト名検証を有効または無効にします。 | false | boolean |
| allowSerializedHeaders (advanced) | transferExchange が true の場合にのみ TCP に使用されます。true に設定すると、ヘッダーとプロパティーのシリアル化可能なオブジェクトが交換に追加されます。そうしないと、Camel はシリアル化できないオブジェクトを除外し、WARN レベルでログに記録します。 | false | boolean |
| channelGroup (上級) | 明示的な ChannelGroup を使用するには。 | ChannelGroup | |
| configuration (advanced) | このエンドポイントを設定するためにカスタム設定された NettyHttpConfiguration を使用するには。 | NettyHttpConfiguration | |
| disableStreamCache (advanced) | Netty HttpRequest#getContent() または HttpResponset#getContent() からの raw の入力ストリームがキャッシュされるかどうかを決定します (Camel はストリームを軽量メモリーベースのストリームキャッシュに読み込みます)。デフォルトでは、Camel は Netty 入力ストリームをキャッシュして複数回の読み取りをサポートし、Camel がストリームからすべてのデータを取得できるようにします。ただし、ファイルやその他の永続ストアに直接ストリーミングするなど、生のストリームにアクセスする必要がある場合は、このオプションを true に設定できます。このオプションを有効にすると、そのままでは Netty ストリームを複数回読み取ることができず、Netty raw ストリームのリーダーインデックスを手動でリセットする必要があることに注意してください。また、Netty は、Netty HTTP サーバー/HTTPクライアントの処理が終了すると、Netty ストリームを自動で閉じます。つまり、非同期ルーティングエンジンが使用されている場合、org.apache.camel.Exchange をルーティングし続ける非同期のスレッドは、Netty ストリームを閉じるために読み取ることができない場合があります。 | false | boolean |
| headerFilterStrategy (advanced) | カスタム org.apache.camel.spi.HeaderFilterStrategy を使用してヘッダーをフィルタリングするには。 | HeaderFilterStrategy | |
| nativeTransport (advanced) | NIO の代わりにネイティブトランスポートを使用するかどうか。ネイティブトランスポートはホストオペレーティングシステムを利用し、一部のプラットフォームでのみサポートされます。使用しているホストオペレーティングシステムの netty JAR を追加する必要があります。詳細については、を参照してください。 | false | boolean |
| nettyHttpBinding (advanced) | カスタム org.apache.camel.component.netty.http.NettyHttpBinding を使用して、Netty および Camel Message API との間でバインドします。 | NettyHttpBinding | |
| 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 (上級) | 同期処理を厳密に使用するかどうかを設定します。 | false | boolean |
| transferException (advanced) | 有効にすると、エクスチェンジがコンシューマー側で処理に失敗し、発生した例外が application/x-java-serialized-object コンテンツタイプとして応答でシリアライズされた場合に、例外がシリアライズされました。producer 側では、例外がデシリアライズされ、HttpOperationFailedException ではなくそのまま出力されます。原因となった例外はシリアライズする必要があります。これは、デフォルトでオフになっています。これを有効にすると、Java が受信データをリクエストから Java にデシリアライズし、セキュリティー上のリスクが生じる可能性があることに注意してください。 | false | boolean |
| transferExchange (advanced) | TCP にのみ使用されます。ボディーだけでなく、ネットワーク経由でエクスチェンジを転送することができます。In body、Out body、fault body、In ヘッダー、Out ヘッダー、Fault ヘッダー、exchange プロパティー、exchange 例外フィールドが転送されます。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化できないオブジェクトを除外し、WARN レベルでログに記録します。 | false | boolean |
| unixDomainSocketPath (advanced) | inet ソケットの代わりに使用する unix ドメインソケットへのパス。ホストとポートのパラメーターは使用されませんが、必要です。ダミー値を設定できます。nativeTransport=true および clientMode=false で使用する必要があります。 | String | |
| 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 | |
| decoders (codec) | 使用するデコーダーのリスト。コンマで区切られた値を持つ文字列を使用して、値をレジストリーで検索することができます。Camel がルックアップする必要があることを認識できるように、値の前に # を付けることを忘れないでください。 | String | |
| encoders (codec) | 使用するエンコーダーのリスト。コンマで区切られた値を持つ文字列を使用して、値をレジストリーで検索することができます。Camel がルックアップする必要があることを認識できるように、値の前に # を付けることを忘れないでください。 | String | |
| enabledProtocols (security) | SSL を使用するときに有効にするプロトコル。 | TLSv1.2,TLSv1.3 | String |
| keyStoreFile (セキュリティー) | 暗号化に使用されるクライアント側の証明書キーストア。 | File | |
| keyStoreFormat (security) | ペイロードの暗号化に使用されるキーストア形式。設定されていない場合、デフォルトで JKS になります。 | String | |
| keyStoreResource (security) | 暗号化に使用されるクライアント側の証明書キーストア。デフォルトではクラスパスからロードされますが、classpath:、file:、または http: をプレフィックとして指定して、異なるシステムからリソースをロードすることもできます。 | String | |
| needClientAuth (security) | SSL の使用時にサーバーがクライアント認証を必要とするかどうかを設定します。 | false | boolean |
| パスフレーズ (セキュリティー) | SSH を使用して送信されたペイロードを暗号化/復号化するために使用するパスワード設定。 | String | |
| securityConfiguration (security) | 安全な Web リソースを設定するための org.apache.camel.component.netty.http.NettyHttpSecurityConfiguration を参照します。 | NettyHttpSecurityConfiguration | |
| securityOptions (security) | マップのキーと値のペアを使用して NettyHttpSecurityConfiguration を設定する場合。 | Map | |
| securityProvider (security) | ペイロードの暗号化に使用するセキュリティープロバイダー。設定されていない場合、デフォルトは SunX509 です。 | String | |
| ssl (セキュリティー) | このエンドポイントに SSL 暗号化を適用するかどうかを指定する設定。 | false | boolean |
| sslClientCertHeaders (security) | 有効で SSL モードの場合、Netty consumer は、サブジェクト名、発行者名、シリアル番号、有効な日付範囲などのクライアント証明書に関する情報を含むヘッダーで Camel メッセージを強化します。 | false | boolean |
| sslContextParameters (security) | SSLContextParameters を使用してセキュリティーを設定する場合。 | SSLContextParameters | |
| sslHandler (セキュリティー) | SSL ハンドラーを返すために使用できるクラスへの参照。 | SslHandler | |
| trustStoreFile (セキュリティー) | 暗号化に使用されるサーバー側の証明書キーストア。 | File | |
| trustStoreResource (security) | 暗号化に使用されるサーバー側の証明書キーストア。デフォルトではクラスパスからロードされますが、classpath:、file:、または http: をプレフィックとして指定して、異なるシステムからリソースをロードすることもできます。 | String |