入出力のクラスタ プロパティ

以下のクラスタ プロパティは、ゲートウェイ ノードまたはノード クラスタの入出力の動作を設定します。
9-5
以下のクラスタ プロパティは、
Layer7 API Gateway
ノードまたはノード クラスタの入出力の動作を設定します。
時間関連プロパティに使用できる有効な時間単位のリストについては、「クラスタ プロパティ」の「時間単位」を参照してください。
プロパティ
説明
concall.globalCoreConcurrency
Run All Assertions Concurrently アサーションを使用する場合に同時に実行できるアサーションの数。 この値はアサーションに通常使用可能な並列スレッドの数です。
デフォルト:
32
concall.globalMaxConcurrency
Run All Assertions Concurrently アサーションを使用する場合に同時に実行できるアサーションの最大数。 これは、そのようなアサーション全体にわたるグローバル制限です。
デフォルト:
64
concall.globalMaxConcurrency
の値は、
concall.globalCoreConcurrency
の 2 倍を超えないようにしてください。
concall.globalMaxWorkQueue
同時実行を待機するアサーションの最大数。 この制限に達すると、キューが破棄されるまで Gateway によってアサーションが(同時実行ではなく)順次実行されます。
すでに
concall.globalMaxConcurrency
値に到達している場合を除き、作業キューが埋まっていくことはありません。
デフォルト:
64
concall.globalMaxWorkQueue
の値は、
concall.globalMaxConcurrency
の 2 倍を超えないようにしてください。
io.httpDefaultContentTypeCharset
Content-Type
HTTP ヘッダの文字セットの値を定義します。 応答に Content-Type ヘッダの文字セットが含まれない場合は、このプロパティを使用します。
デフォルト:
none
io.debugSsl
SSL および TLS 操作のデバッグ情報をログに記録するかどうかを示します。 値はブール値です。 変更を有効にするには、Gateway を再起動します。
デフォルト:
false
io.EmailListenerMessageMaxBytes
すべての MIME 部分を含む、電子メール メッセージの最大サイズ。 サイズ制限なしを指定するには、「0」(ゼロ)を入力します。
このプロパティは、リクエスト メッセージのみ (クライアントから Gateway への受信、Gateway からバックエンド システムへの送信、およびバックエンド システムから Gateway への受信)に影響します。 Gateway を使用してクライアントに返されるレスポンス メッセージのサイズには影響しません。
デフォルト:
2621440
(バイト)
io.failoverServerRetryDelay
「Round-Robin」または「Ordered Sticky with Failover」フェールオーバ ストラテジを使用する場合に失敗したサーバにリトライする間隔。 この設定は、フェールオーバ ストラテジのアサーションなどによって使用されます。たとえば、Scan Using ICAP-Enabled Antivirus アサーションなどがあります。
「0」(ゼロ)の値は、以下のフェールオーバ ストラテジの間隔を示します。
  • 「Ordered Sticky with Failover」:
    15m
  • 「Round Robin」:
    5m
使用可能な最大サーバ リトライ間隔は「2^63-1」ミリ秒です。
デフォルト:
0
(ミリ秒)
io.httpAllowBackslash
円記号(\)を URL で許可するかどうかを決定します。 値はブール値です。
デフォルト:
false
io.httpChallengeOrder
HTTP レスポンスのチャレンジで、レガシーの順番を使用するかどうかを定義します。 有効な値は以下のとおりです。
  • reverse
    : レガシーのチャレンジの順番(NTLM、Negotiate、Digest、Basic)を使用します
  • windows
    : Windows チャレンジの順番(Negotiate、NTLM、Digest、Basic)を使用します。
デフォルト:
Windows
io.httpConcurrencyWarning.repeatDelay
しきい値を超えている HTTP(S) スレッド プールの並行処理に関する監査メッセージ警告を繰り返す頻度を制御します。 変更内容は直ちに適用されます。
詳細については、「リスン ポートのプロパティ」の「Advanced Properties」を参照してください。
デフォルト:
60
(秒)
io.httpConnectionIdleTimeout
HTTP 接続がタイムアウトするまでにアイドル状態を維持できる最大時間。 値は秒単位です。 「0」(ゼロ)を入力すると、接続はタイムアウトしません。
デフォルト:
0
(秒)
これは、非表示プロパティです。[
Key
]フィールドに名前を入力し、Tab キーを押すことによって編集できます。 (ドロップダウン リストからは
探せません
。)
パフォーマンスの向上のために、このプロパティを 5 秒に設定することを検討してください。 これにより、パフォーマンスを維持しつつ、シャットダウン確認を受信しなかったときに接続が開いたままになることで、リソースが不必要に消費されなくなります。
io.httpCoreConcurrency
ノードあたりの同時にアクティブな HTTP 接続のコア数。 負の値は、
io.httpMaxConcurrency
に対する比率を使用することを意味します。 たとえば、「-5」は最大の 1/5 を意味します。
デフォルト:
500
Gateway バージョン 10.0+ の場合、推奨される設定は
1800
です。
このプロパティを
io.httpMaxConcurrency
と併せて適切に使用する方法の詳細については、以下の「'io.httpCoreConcurrency' および 'io.httpMaxConcurrency' の増加」を参照してください。
io.httpDefaultContentType
レスポンスに「Content-Type」ヘッダがない場合に使用する「Content-Type」 HTTP ヘッダの値。
このクラスタ プロパティに値が設定され、Gateway が「Content-Type」ヘッダのないレスポンスを受信した場合、監査メッセージ 4049 が生成されます。
値には、「text/xml; charset=utf-8」などのパラメータを含めることができます。 値が有効でない場合は無視され、警告がログに記録されます。
デフォルト:
none
io.httpDisableKeepAlive
送信 HTTP 接続(ルーティング アサーション以外)で HTTP Keep-Alive 接続を無効にします。 値はブール値です。
デフォルト:
false
io.httpEnableAutoChallenge
事前認証が使用されている場合、[Auto Challenge]を有効にします。
デフォルト:
false
これは、非表示プロパティです。[
Key
]フィールドに名前を入力し、Tab キーを押すことによって編集できます。 (ドロップ ダウン リストからは
探せません
。)
io.httpExpectContinue
HTTP ルーティングで「Expect: 100-continue」ヘッダを使用します。これにより、認証の効率を向上させることができます。 値はブール値です。
デフォルト:
false
io.httpMaxConcurrency
遅延を引き起こさずに同時にアクティブにできる同時 HTTP/HTTPS 接続(ノードあたり)の最大数。 この設定の変更は 30 秒以内に有効になります。 この値は、独自のプライベート スレッド プールを使用するように設定されていないすべてのリスン ポートで共有されます。
デフォルト:
750
Gateway バージョン 10.0+ の場合、推奨される設定は
2000
です。
技術注記:
io.httpMaxConcurrency
の値は、node.properties ファイルの
c3p0DataSource.maxPoolSize
の設定と密接に関連しています。
追加情報
同時実行の上限を増やすと、より多くのインフライト リクエストが同時に処理されます。 受信リクエストがハンドラ スレッドを待っていることがパフォーマンスのボトルネックであるような状況では、スループットが増加します。 たとえば、遅いバック エンド サーバを待っている Route via HTTP(S) アサーションの内部で多くのスレッドがビジーになっている場合、このような状況が発生する場合があります。 同時実行を増やす場合の欠点は、Gateway のワーキング セットのサイズが増加することにあります。各インフライト リクエストは、ジョブを実行するためにある程度のメモリを必要とします。
ピーク負荷下の Gateway が必要とするメモリは、さまざまな要因に依存します。
  • リクエストとそのサイズの混合
  • 使用されているアサーション(メッセージ本文を単純に通過するよりも、大きな XML の DOM 解析に大量なメモリが必要な場合など)
  • リクエスト サイズの制限(
    io.xmlPartMaxBytes
    クラスタ プロパティの値など)
このプロパティを適切に使用する方法の詳細については、以下の「io.httpCoreConcurrency および io.httpMaxConcurrency の増加」を参照してください。
io.httpParamsMaxFormPostBytes
HTTP 形式の post を処理するときにバッファする最大バイト数(application/x-www-form-urlencoded)。
デフォルト:
5242880
技術注記:
io.httpParamsMaxFormPostBytes
クラスタ プロパティは、以前の
com.l7tech.message.httpParamsMaxFormPost
システム プロパティから置き換わります。ただし、システム プロパティが設定された場合は、このクラスタ プロパティより優先されます。
io.httpResponseStreamUnlimited
HTTP レスポンスをストリーミングする場合に、メッセージ サイズの制限を無視します。 値はブール値です。
デフォルト:
true
io.httpResponseStreaming
クライアントにレスポンスをストリーミングします。 値はブール値です。
  • true
    : Gateway は HTTP を介して受信したリクエストに対するレスポンスをストリーミングします。 このレスポンスは、ストリーミング(HTTP または SSH ルーティングなど)をサポートするルーティング アサーションからのものである必要があります。 Gateway によるレスポンスの検証を必要とするものがサービス ポリシーに存在しない必要があります。
    ストリーミングが有効な場合、レスポンスの本文は、クライアントに返される前に Gateway によってバッファされません。 これにより、特に大きなレスポンスに対して、全体的な遅延を大幅に減らすことができます。 これがデフォルトの設定です。
    ストリーミングを有効にする場合は、以下の問題に注意してください。
    • ストリームされるレスポンスには、監査シンク ポリシーからアクセスできません。
    • クライアントは、サービス ポリシーにレスポンスを確認するロジックが含まれていない場合、クライアント自体を保護する設定が必要になります。
  • false
    : Gateway は、ポリシーがレスポンスの確認を要求するかどうかにかかわらず、クライアントに返す前にレスポンス全体を常にバッファします。
io.httpRoutingAuthorizationStatePoolTimeout
HTTP(S) を使用したリクエストのルーティング中に、接続識別子がアイドルのままプール内に存続できる時間を指定します。 値は時間単位です。
例:
  • Gateway はメッセージを受信し、ユーザ名/パスワードの組み合わせによる認証情報を使用して、バックエンド サーバにルーティングします。 このタイムアウト期間内に同じユーザ名/パスワードを持つ新しいリクエストが受信されなかった場合、識別子は期限切れになります。
  • 識別子が期限切れになった後に同じ認証情報を持つ新しいメッセージを受信した場合、Gateway は新しい識別子を生成し、新しい接続を開きます。
  • 新しいメッセージがタイムアウト期間の経過前に受信された場合、Gateway は同じ識別子をルーティングに使用します。 これは、以前に開いた接続を再利用するということです。
デフォルト:
1m
io.httpRoutingAuthorizationStatePoolSize
Gateway が格納できる HTTP(S) 接続識別子の最大数を設定します。 最大値に到達すると、新しい識別子が作成されたときに、最も古い識別子がドロップされます。 リクエストがドロップされた古い識別子の使用を試行すると、Gateway は新しい接続を開きます。
デフォルト:
10000
io.httpVersion
ルーティング アサーションによって使用される HTTP バージョンを設定します。 「1.0」に設定すると、
io.httpExpectContinue
クラスタ プロパティは無視されます。
デフォルト:
1.1
デフォルト値は、
Route via HTTP(S) アサーション
[Request HTTP Rules]タブによって HTTP(S) ルーティング時にオーバーライドされる可能性があります。
io.httpsHostAllowWildcard
ホスト名を検証する場合にワイルドカードを許可するかどうかを決定します。
  • true
    = 証明書の名前に対してサーバ ホスト名を検証する場合に、ワイルドカード文字「*」が許可されます
  • false
    = ワイルドカード文字は許可されません。サーバ ホスト名を明示的に指定する必要があります
デフォルト:
false
詳細については、「ホスト名のワイルドカード一致」を参照してください。
io.httpsHostVerify
信頼されておらず、信頼済みの証明書によっても署名されていない証明書に対するサーバ名の検証を有効にします。
  • true
    = サーバ名が証明書の名前に対して検証されます。 一致しない場合、検証に失敗します。
  • false
    = サーバ名は証明書の名前に対して検証されません。 一致しない場合、検証に失敗しません。
デフォルト:
true
この設定は、証明書の「Verify Hostnames for Outbound SSL Connections」設定と共に動作します。 詳細については、「証明書の編集」を参照してください。
io.jmsConnectionCacheMaxAge
キャッシュされた JMS 接続の最大有効期間。 時間制限なしを指定するには、「0」(ゼロ)を入力します。 値は時間単位です。
デフォルト:
10m
io.jmsConnectionCacheMaxIdleTime
アイドル状態の JMS 接続をキャッシュする最大時間です。 時間制限なしを指定するには、「0」(ゼロ)を入力します。 値は時間単位です。
デフォルト:
5m
io.jmsConnectionCacheMaxSize
キャッシュする JMS 接続の数。 「0」(ゼロ)を入力すると、JMS 接続のキャッシュは無効になります。 このキャッシュ サイズは「ソフト」制限であり、以下の条件下では超過する場合があります。
  • JMS ルーティングを使用する数百の同時リクエストがあり、それぞれ個別に接続しています。 この場合、
    io.jmsConnectionCacheMaxSize
    プロパティを超えていても、リクエストと同数の JMS 接続があるということになります。
  • テンプレート送信宛先を使用する場合、新しいキュー接続を動的に(1 つのリクエストあたり 1 つ)作成することができます。 この場合、対象となるキャッシュされた接続が削除されるまで、キャッシュ サイズを超過する可能性があります。
接続プーリングでは、接続リークを回避するために、このプロパティ値が、すべての JMS 宛先のキューの総数より多い数に設定されている必要があります。
デフォルト:
100
io.jmsConnectionEvictionBatchSize
プール クリーンアップ タスクの実行時ごとに収集される期限切れのアイドル接続の数(最大 10000)。
デフォルト:
1
io.jmsConnectionIdleTime
アイドル接続数が指定のアイドル接続制限(
io.jmsSessionMaxIdle
)を超えた場合に、アイドル状態の JMS 接続が接続プール内に留まることができる最大時間。 制限なしを指定するには、「0」(ゼロ)を入力します。 値は時間単位です。
デフォルト:
5m
io.jmsConnectionMaxWait
JMS 接続を取得するときに待機する最大時間。 制限なしを指定するには、「0」(ゼロ)を入力します。
デフォルト:
5s
io.jmsConnectionMinIdle
接続プール内で予約済みのアイドル接続の最小数(最大 10000)。
デフォルト:
0
io.jmsConnectionPoolSize
JMS 接続プールの最大サイズ(最大 10000)。
デフォルト:
1
最適な結果を得るには、接続プール サイズ 100 ~ 200 を使用します。
io.jmsConnectionTimeBetweenEviction
プール クリーンアップ スレッドの実行間隔。 値は時間単位です。
デフォルト:
10 秒
io.jmsConsumerConnections
クラスタで JMS 宛先に対して許可する受信 JMS コンシューマ接続数。 この値は、JMS 宛先のプロパティの[Inbound Options]タブを使用して、個別の JMS 宛先に対してオーバーライドできます。
デフォルト:
1
io.jmsMessageMaxBytes
すべての MIME 部分を含む、JMS メッセージの最大サイズ。 サイズ制限なしを指定するには、「0」(ゼロ)を入力します。 このプロパティは、リクエスト メッセージのみ(クライアントから Gateway への受信、Gateway からバックエンド システムへの送信、およびバックエンド システムから Gateway への受信)に影響します。 Gateway を介してクライアントに返されるレスポンス メッセージのサイズには影響しません。
デフォルト:
2621440
(バイト)
io.jmsRoutingMaxRetries
送信 JMS キューへの接続の最大試行回数。
デフォルト:
5
io.jmsRoutingRetrySleep
送信 JMS キューへの接続エラー後のスリープ時間。
デフォルト:
1s
io.jmsSessionMaxIdle
セッション プール内でアイドル状態になることができるセッションの最大数(最大 10000)。 制限なしを指定するには、「-1」を入力します。
デフォルト:
8
io.jmsSessionMaxWait
プールが使い果たされた場合に、アイドル セッションを待機する最大期間。 制限なしを指定するには、「0」(ゼロ)を入力します。 値は時間単位です。
デフォルト:
5000 ms
io.jmsSessionPoolSize
セッション プールによって割り当てることができるセッションの最大数(最大 10000)。 制限なしを指定するには、「-1」を入力します。
デフォルト:
8
io.mqConnectionCacheMaxAge
キャッシュされた MQ ネイティブ接続の最大有効期間。 時間制限なしを指定するには、「0」(ゼロ)を入力します。 値は時間単位です。
デフォルト:
10m
io.mqConnectionCacheMaxIdleTime
アイドル状態の MQ ネイティブ接続をキャッシュする最大時間。 時間制限なしを指定するには、「0」(ゼロ)を入力します。 値は時間単位です。
デフォルト:
5m
io.mqConnectionCacheSize
キャッシュへの MQ のネイティブ接続の数。 MQ ネイティブ接続のキャッシュを無効にするには、「0」(ゼロ)を入力します。 このキャッシュ サイズは「ソフト」制限であり、以下の条件下では超過する場合があります。
  • MQ ネイティブ ルーティングを使用する数百の同時リクエストがあり、それぞれ個別に接続しています。 この場合、
    io.mqConnectionCacheMaxSize
    プロパティを超えていても、リクエストと同数の MQ 接続があるということになります、
  • テンプレート送信キューを使用する場合、新しいキュー接続を動的に(1 つのリクエストあたり 1 つ)作成することができます。 この場合、対象となるキャッシュされた接続が削除されるまで、キャッシュ サイズを超過する可能性があります。
デフォルト:
100
io.mqConversionCCSID
IBM MQ サーバからの MQGET で、Gateway 用に変換される、要求される CCSID を設定します。 このプロパティについては、
io.mqConvertMessageApplicationDataFormat
クラスタ プロパティを
true
に設定して MQGMO_CONVERT を有効にすることが必要です。
値は、CCSID 値(整数)です。 デフォルト値の「0」は、Gateway 内で 819 (ISO-8859-1)に変換されます。 CA Technologies では、819 (ISO-8859-1)または 1208 (UTF-8)のいずれかの使用を推奨しています。
このクラスタ プロパティを
0
または
819
のどちらに設定しても、結果は同じです(ISO-8859-1 が使用されます)。 UTF-8 を使用するには、このプロパティを
1208
に設定します。 CCSID のリストについては、https://www-01.ibm.com/software/globalization/ccsid/ccsid_registered.html を参照してください。
デフォルト:
0
(ISO-8859-1 を使用)
io.mqConvertMessageApplicationDataFormat
MQ メッセージ アプリケーション データをキュー マネージャによって指定された形式に変換します。 値はブール値です。
以下の場合に変換が発生します。
デフォルト:
true
io.mqForceReturnPropertiesInMQRFH2Header
キューからメッセージを読み取るときに MQ メッセージ内のプロパティを MQRFH2 ヘッダで返すように強制します。 以下の場合に発生します。
デフォルト:
false
このクラスタ プロパティを有効にした場合は、異なるコンテキスト変数を使用してメッセージ プロパティを参照する必要があります。 たとえば、リクエスト メッセージ内で「myMessageProperty」プロパティの値を検索する場合:
  • ${request.mqnative.additionalheader.myMessageProperty}
    を使用します
  • ${request.mqnative.property.myMessageProperty}
    は使用しません
io.mqMessageMaxBytes
すべての MIME 部分を含む、MQ ネイティブ メッセージの最大サイズ。 サイズ制限なしを指定するには、「0」(ゼロ)を入力します。 このプロパティは、リクエスト メッセージのみ Gateway を介してクライアントに返されるレスポンス メッセージのサイズには影響しません。
デフォルト:
2621440 バイト
以下はすべてリクエスト メッセージと見なされます。
  • クライアントから Gateway への受信
  • Gateway からバックエンド システムへの送信
  • バックエンド システムから Gateway への受信
io.mqPutOperationCorePoolSize
MQ ネイティブ キューに対する PUT 操作用のスレッド プールの初期プール サイズを指定します。
デフォルト:
50
io.mqPutOperationPoolKeepAliveDuration
MQ ネイティブ キューに対する PUT 操作用のプール内のスレッドのキープ アライブ期間を秒単位で指定します。
デフォルト:
60
io.mqPutOperationMaxPoolSize
MQ ネイティブ キューに対する PUT 操作用のスレッド プールの最大プール サイズを指定します。
デフォルト
: 100
io.mqResponseTimeout
Route via MQ Native アサーションが、タイムアウトになるまでに replyTo キューのレスポンスを待機する時間。 この値は、アサーションのプロパティの[MQ response timeout]フィールドでオーバーライドできます。
デフォルト:
10000
(ミリ秒)
io.mqRoutingMaxRetries
送信 MQ キューへの接続の最大試行回数。
デフォルト:
5
io.mqRoutingRetrySleep
送信 MQ キューへの接続エラー後のスリープ時間。
デフォルト:
1s
io.mqRoutingSetAllContext
設定できる MQ メッセージ記述子を決定します。 値はブール値です。
  • true
    = すべての MQ メッセージ記述子を設定できますが、以下の例外があります。
  • false
    = 新しいメッセージ記述子を追加する場合、[Name]ドロップダウン リストに表示される MQ メッセージ記述子のみを設定できます(「MQ メッセージのカスタマイズ」を参照)。 これがデフォルトの設定です。
    • backoutCount
    • messageSequenceNumber
    • originalLength
MQ メッセージ記述子のリストについては、IBM WebSphere の Web サイトの「Class MQMessage」を参照してください。
io.outConnectTimeout
ルーティングで接続の確立を待機する最大時間。 超過した場合、ルーティングは失敗(またはフェールオーバ)します。 このタイムアウトは、[HTTP(S) Routing Properties]を使用して特定のルーティング アサーションに対してオーバーライドできます。
デフォルト:
30000
(ミリ秒)
io.outTimeout
一部のレスポンス データの送信リクエストへの読み込みに許可される最大時間。 超過した場合、ルーティングは失敗(またはフェールオーバ)します。 このタイムアウトは、[HTTP(S) Routing Properties]を使用して特定のルーティング アサーションに対してオーバーライドできます。
デフォルト:
60000
(ミリ秒)
io.rateLimit
受信リクエストの最小レート。
デフォルト:
1024
(バイト/秒)
io.rateTimeout
受信リクエスト レートの確認の I/O タイムアウト期間。
デフォルト:
60000
(ミリ秒)
io.signedPartMaxBytes
シグネチャの処理で許可される添付ファイルの最大サイズ。 サイズ制限なしを指定するには、「0」(ゼロ)を入力します。 このプロパティは、セキュリティに関して処理される署名されたメッセージ部分に対して適用されます。
デフォルト:
5242880
(バイト)
io.staleCheckCount
間隔ごとに確認される古い接続の数。
デフォルト:
1
io.staleCheckHosts
確認される古いホストの最大数。
デフォルト:
10
io.timeout
クライアントからの受信リクエストがタイムアウトになるまでの I/O タイムアウト時間。 これは、Gateway がクライアントからのデータをタイムアウトまで待つ時間です。
デフォルト:
60000
(ミリ秒)
io.xmlPartMaxBytes
メッセージの XML 部分(パート 1)の最大サイズ。 メッセージの最大サイズに達した場合、SOAP Fault 「500」が返されます。 サイズ制限なしを指定するには、「0」(ゼロ)を入力します。
Gateway のリソースの使用状況を制限するためにこの設定を使用します。 任意のサイズ制限を適用するのではなく、Limit Message Size アサーションを使用します。 小さな値は使用しないでください。
デフォルト:
2621440
(バイト)
(1)圧縮が有効な場合、このプロパティは圧縮されていないメッセージ サイズに適用されます。 (2) Route via Raw TCP アサーションは、メッセージ サイズの制限に別の方法を使用します。 (3)
io.xmlPartMaxBytes
が正しい結果を返さない場合は、
io.httpResponseStreamUnlimited
を「false」に設定します。
jms.connectErrorSleep
受信 JMS 接続エラー後に接続の再試行を待機する時間。 値は時間単位です。
デフォルト:
60s
jms.listenerThreadLimit
すべての JMS エンドポイントを処理するために作成できる処理スレッド数。 値は 5 以上である必要があります。
デフォルト:
25
jms.ResponseTimeout
Route via JMS アサーションが、タイムアウトになるまでに
replyTo
キューのレスポンスを待機する時間。 この値は、アサーションのプロパティの[JMS response timeout]フィールドでオーバーライドできます。
デフォルト:
10000
(ミリ秒)
mq.connectErrorSleep
受信 MQ ネイティブ接続エラー後に接続の再試行を待機する時間。 値は時間単位です。
デフォルト:
60s
このクラスタ プロパティに対する変更を有効にするには、リスナまたは Gateway の再起動が必要です。 リスナを再起動する方法は、MQ ネイティブ設定を編集および保存することです。
mq.ConnectionPool.maxActive
MQ ネイティブ接続プールごとのアクティブな接続の最大数。 アクティブ接続を許可しない場合は、「0」(ゼロ)を入力します。 負の値は、アクティブな接続数が無制限であることを示します。
このプロパティは、MQ ネイティブ キューのプロパティの[Outbound Options]タブで使用されます。
デフォルト:
20
mq.ConnectionPool.maxIdle
MQNative 接続プール内で許容されるアイドル接続の最大数。 アイドル接続を許可しない場合は、「0」(ゼロ)を入力します。 負の値は、アイドル接続数が無制限であることを示します。
このプロパティは、MQ ネイティブ キューのプロパティの[Outbound Options]タブで使用されます。
デフォルト:
20
最適なパフォーマンスを得るには、
mq.ConnectionPool.maxIdle
の値を
mq.ConnectionPool.maxActive
と同じ値に設定します。
mq.ConnectionPool.maxWait
MQ ネイティブ接続が利用可能になるまでの待機時間の最大数。 値はミリ秒単位です。 無期限に待機するには、「0」(ゼロ)または負の値を入力します。
このプロパティは、MQ ネイティブ キューのプロパティの[Outbound Options]タブで使用されます。
デフォルト:
-1
mq.listenerInboundFailureQueuePutMessageOptions
受信メッセージの消費が失敗したときの PUT メッセージ オプションをカスタマイズします。 「MQ ネイティブ キューのプロパティ」の「[Inbound Options]タブの設定」を参照してください。
このクラスタ プロパティにはデフォルトが存在せず、Failure queue Put Message オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.listenerInboundGetMessageOptions
メッセージを消費するときの受信 MQ ネイティブ リスナの Get メッセージ オプションをカスタマイズします。 「MQ ネイティブ キューのプロパティ」の「[MQ Connection Properties]タブの設定」を参照してください。
このクラスタ プロパティにはデフォルトが存在せず、Get オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.listenerInboundOpenOptions
受信 MQ ネイティブ リスナ(受信メッセージ)用のキュー オブジェクトにアクセスするときの Open オプションをカスタマイズします。 「MQ ネイティブ キューのプロパティ」の「[MQ Connection Properties]タブの設定」を参照してください。
このクラスタ プロパティにはデフォルトが存在せず、Open オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.listenerOutboundReplyQueueGetMessageOptions
送信 MQ ネイティブ コネクタ用の GET 応答メッセージ オプションをカスタマイズします。 「MQ ネイティブ キューのプロパティ」の「[Outbound Options]タブの設定」を参照してください。
このクラスタ プロパティにはデフォルト値がありません。 Get Reply Message オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.listenerInboundReplyQueuePutMessageOptions
受信 MQ ネイティブ リスナ用の PUT メッセージ オプションをカスタマイズします。 「MQ ネイティブ キューのプロパティ」の「[Inbound Options]タブの設定」を参照してください。
このクラスタ プロパティにはデフォルト値がありません。 Reply queue Put オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.listenerMaxConcurrentConnections
任意の受信 MQ ネイティブ キューに対して許可される同時接続の最大数。
デフォルト:
1000
(1)ここで指定されている制限は、キューのプロパティ(MQ ネイティブ キューのプロパティの[Inbound Options]タブ)で指定されているより大きな値をオーバーライドします。 (2)このクラスタ プロパティに対する変更を有効にするには、リスナまたは Gateway の再起動が必要です。
mq.routingGetOpenOptions
Route via MQ Native アサーションの GET オープン オプションをカスタマイズします(「[Target]タブの設定」を参照)。
このクラスタ プロパティにはデフォルトが存在せず、Open オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.routingGetMessageOptions
Route via MQ Native アサーションの GET メッセージ オプションをカスタマイズします(「[Target]タブの設定」を参照)。
このクラスタ プロパティにはデフォルトが存在せず、GET メッセージ オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.routingPutMessageOptions
Route via MQ Native アサーションの PUT メッセージ オプションをカスタマイズします(「[Target]タブの設定」を参照)。
このクラスタ プロパティにはデフォルト値がありません。 PUT メッセージ オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.routingPutOpenOptions
Route via MQ Native アサーションの PUT オープン オプションをカスタマイズします(「[Target]タブの設定」を参照)。
このクラスタ プロパティにはデフォルトが存在せず、PUT オープン オプションが指定されていない場合にのみ参照されます。 参照した場合に未設定の場合、Gateway は MqNativeConstants クラスのデフォルトを使用します。
mq.listenerPollingInterval
空のキューに対してメッセージのポーリングを行う場合に待機する時間。 値は時間単位です。
デフォルト:
5s
このクラスタ プロパティに対する変更を有効にするには、リスナまたは Gateway の再起動が必要です。 リスナを再起動する方法は、MQ ネイティブ設定を編集および保存することです。
mq.listenerThreadLimit
すべての MQ エンドポイントを処理するために作成できる処理スレッド数。 値は 5 以上である必要があります。
デフォルト:
25
変更を有効にするには、Gateway の再起動が必要です。
mq.preventAuditFloodPeriod
MQ ネイティブ リスナによって監査メッセージのフラッディングを防ぐために使用される期間。 最新のリスナ監査メッセージがこの期間内に発生した場合は、次のリスナ メッセージがログに記録されます(監査レコードは作成されません)。 監査のフラッディングを制限しない場合は、「0」(ゼロ)を入力します。 値は時間単位です。
デフォルト:
0s
このプロパティを変更した場合、MQ リスナまたは Gateway の再起動が必要です。 リスナを再起動する方法は、MQ ネイティブ設定を編集および保存することです。
sftpPolling.connectErrorSleep
SFTP ポーリング リスナへの接続エラー後のスリープ時間。 値は時間単位です。
デフォルト:
10 秒
sftpPolling.downloadThreadWait
ファイル ダウンロード スレッドが実行されるまでの最大待機時間の制限(秒単位)。
デフォルト:
3
(秒)
sftpPolling.ignoredFileExtensionList
SFTP ポーリング時に無視するファイル拡張子。
デフォルト:
.filepart
このプロパティを変更するには、SFTP ポーリング リスナの再起動が必要です。
sftpPolling.listenerThreadLimit
すべての SFTP ポーリング リスナを処理するために作成できる処理スレッド数のグローバル制限。値は 5 以上である必要があります。
デフォルト:
25
sftpPolling.messageMaxBytes
SFTP メッセージに許可する最大バイト数。 サイズ制限なしを指定するには、「0」(ゼロ)を入力します。
デフォルト:
5242880
(バイト)
ssh.routingEnabledCiphers
SSH2 ルーティングで有効にする暗号文(カンマ区切り)。 有効な値は以下のとおりです。
aes128-ctr
aes192-ctr
aes256-ctr
aes128-cbc
aes192-cbc
aes256-cbc
blowfish-cbc
3des-cbc
デフォルト:
aes128-ctr, aes128-cbc, 3des-cbc, blowfish-cbc, aes192-ctr, aes192-cbc, aes256-ctr, aes256-cbc
ssh.routingEnabledKexAlgs
SSH ルーティングで使用される有効なすべての KEX アルゴリズムの順序付き CSV リストを指定します。 認識されていない KEX アルゴリズムは、KEX アルゴリズム ネゴシエーションのリストから削除されます。
有効な値は以下のとおりです。
ecdh-sha2-nistp256
ecdh-sha2-nistp384
ecdh-sha2-nistp521
diffie-hellman-group-exchange-sha256
diffie-hellman-group14-sha1
diffie-hellman-group-exchange-sha1
diffie-hellman-group1-sha1
デフォルト:
ecdh-sha2-nistp256、ecdh-sha2-nistp384、ecdh-sha2-nistp521、diffie-hellman--exchange-sha256、diffie-hellman-group14-sha1
ssh.routingExplicitlyValidateDeleteFile
SSH ルーティング時のファイル削除の確認。 値はブール値です。
  • true
    : 削除するファイルが実際に存在し、それがファイルであることを確認します。 これがデフォルトの設定です。
  • false
    : 削除するファイルが実際に存在するかどうかに関係なく、確認は実行されません。
ssh.routingExplicitlyValidateDeleteDir
SSH ルーティング時のディレクトリ削除の確認。 値はブール値です。
  • true
    : Gateway は、削除するディレクトリが実際に存在し、それがディレクトリであることを確認します。 これがデフォルトの設定です。
  • false
    : 削除されるディレクトリが実際に存在するかどうかに関係なく、確認は実行されません。
ssh.routingInactiveTimeout
Gateway がアクティビティのない SCP レスポンス ストリームを閉じるまで待機する時間。 通常、レスポンス ストリームは SCP レスポンスの後にクライアントによって閉じられます。 このクラスタ プロパティは、放棄された SCP レスポンスでスレッド プールがいっぱいになって Gateway がブロックされることがないようにします。 値は時間単位です。
通常、SFTP を介してファイルを転送/格納するために使用します。 ユーザが同時にファイルをダウンロードおよび編集しないことをお勧めします。
これは、非表示プロパティです。[
Key
]フィールドに名前を入力し、Tab キーを押すことによって編集できます。 (ドロップダウン リストからは探せません。)
デフォルト:
10 秒
ssh.session.authMaxRetryCount
アサーションが失敗するまでの認証の最大試行回数。
デフォルト:
1
ssh.session.pool.maxActive
(クライアントのスレッドにチェックアウトされた)プールによって一度に割り当てることができるセッションの最大数(キーあたり)。 -1 にセットすると、キーあたりのセッション数は制限されません。
セッションの最大数に達すると、セッション プールが使い果たされ、アサーションは失敗します。 最大値は 1000 です。
デフォルト:
10
ssh.session.pool.
minEvictableIdleTimeMillis
解放されるまでに、オブジェクトをプールでアイドル状態のままにできる最小時間。
デフォルト:
600000
(ミリ秒)
ssh.session.pool.
timeBetweenEvictionRunsMillis
解放するアイドル状態のオブジェクトを確認するまでのスリープ時間。 0 または -1 に設定すると、セッションはアイドル状態のままになります。
デフォルト:
1800000
(ミリ秒)
ssh.sftpRoutingExplicitlyValidateMkdir
SSH ルーティング時に、ディレクトリの作成前に同じ名前のディレクトリが存在しないことを確認するかどうかを決定します。 値はブール値です。
  • true
    : 同じ名前のディレクトリまたはファイルが存在しないことを確認します。 これがデフォルトの設定です。
  • false
    : 同じ名前のディレクトリが存在しても、確認は実行されません。
tomcat.acceptor.threadCount
接続を受け入れるために使用されるスレッドの数を設定します。
デフォルト:
2
tomcat.acceptor.maxConnections
任意の時点で Gateway が受け入れて処理する接続の最大数を設定します。 この最大数に達すると、Gateway はさらに 1 つの接続を受け入れますが、処理は行いません。 この追加で受け入れた接続は処理される接続の数が指定された値を下回るまでブロックされ、下回った時点で Gateway が新規接続の受け入れと処理を再開します。
デフォルト:
4500
Gateway バージョン 10.0+ の場合、推奨される設定は
12000
です。
この設定を行わないと、接続の最大数は
io.httpMaxConcurrency
の値の 6 倍になるように自動的に調整されます。 たとえば、
io.httpMaxConcurrency
の値が 1500 の場合、最大接続数は 9000 (6x1500)になります。
io.httpCoreConcurrency および io.httpMaxConcurrency の増加
コアの同時実行(
io.httpCoreConcurrency
によって設定)は、
Layer7 API Gateway
の起動時に作成される初期 HTTP リスナの数を指定します。 良好なパフォーマンスを得るには、十分な数の HTTP リスナが初期時に実行されている必要があります。 ただし、HTTP リスナを開始するには時間およびリソースが必要とされるため、リスナの数が多すぎると、パフォーマンスに悪影響を及ぼす可能性があります。 システムのトラフィックの予期されるレベルに基づいてコアの同時実行を設定することが理想です。
最大同時実行(
io.httpMaxConcurrency
によって設定)は、HTTP リスナの最大数を指定します。 Gateway では、これより多くの HTTP リスナを作成できず、HTTP リスナの数が十分でない場合、リクエストはキューに入れられます。 ただし、追加のリスナを作成すると、リスナを管理および維持するために CPU および RAM がさらに必要となります。
ヒント:
最大同時実行は、コアの同時実行より多少大きくする必要があります。
CA Technologies では、これらの同時実行プロパティを過度に大きな値にすることはお勧めしません。システムのリソースが使い尽くされてパフォーマンスにかえって悪影響を及ぼすことになるからです。 より多くの RAM および CPU を備えた Gateway では、多くのリスナを開いたままにできますが、リソースは限られています。
正しい値を見つける方法
Gateway の同時実行に対して正しい値を決定するには、ある程度の試行錯誤が必要です。 出荷時の設定は、実稼働環境に多くの同時実行要求が殺到するのを回避するように設計されています。 ただし非実稼働環境では、最適な設定を自由に試すことができます。 クラスタ プロパティを 50 パーセント増やし、負荷テストを実行して繰り返します。 パフォーマンスは徐々に向上しますが、同時実行数が増えるほど、使用するシステム リソースも増加します。 負荷テストで Gateway のリソースを注意深く監視し(具体的には RAM および CPU)、環境に最適な値を判断します。