![]() |
![]() |
![]() |
![]() |
JMS 接続ファクトリ : コンフィグレーション : フロー 制御
フロー制御を使用すると、JMS サーバまたは送り先で過負荷になると 判断した場合にメッセージ プロデューサをペースダウンさせることができます。特に、 指定のバイトまたはメッセージしきい値を超えたときに、JMS サーバまたは送り先は プロデューサに対してメッセージ フロー (秒あたりのメッセージ数) を制限するよう 指示します。
このページでは、この JMS 接続ファクトリのフロー制御コンフィグレーションを 定義できます。
コンフィグレーション オプション
名前 説明 最大フロー しきい値の条件に達したプロデューサで許可される秒あたりの最大メッセージ数。プロデューサがフロー制御されている場合、秒あたり FlowMaximum に指定されたメッセージ数よりも処理を高速化できません。
しきい値の条件に達したときにプロデューサがフローを制限していない場合、そのプロデューサの初期フロー制限が FlowMaximum に設定されます。しきい値の条件に達したときにプロデューサがすでにフローを制限している場合 (フロー制限は FlowMaximum 未満)、プロデューサは次にフローが評価されるまで現在のフロー制限で処理を継続します。
注意 : いったん、しきい値条件への抵触を回避してからは、プロデューサはフロー限度を無視できなくなります。このフロー制限が FlowMaximum 未満の場合、プロデューサはフローが評価されるたびにそのフローを徐々に FlowMaximum まで増やす必要があります。プロデューサが FlowMaximum に達すると、そのフロー制限を無視し、そのフローを制限せずに送信できます。
MBean 属性 (アプリケーション モジュールには適用しない):
FlowControlParamsBean.FlowMaximum
最小値:
1
最大値:
2147483647
最小フロー しきい値の条件に達したプロデューサで許可される秒あたりの最小メッセージ数。これはプロデューサのフロー制限の下限値です。つまり、フロー制限が FlowMinimum に達したプロデューサの処理速度は WebLogic JMS によりそれ以上落とされません。
プロデューサがフロー制御されている場合、秒あたり FlowMinimum のメッセージ数よりもペース ダウンされる必要はありません。
MBean 属性 (アプリケーション モジュールには適用しない):
FlowControlParamsBean.FlowMinimum
最小値:
1
最大値:
2147483647
フロー間隔 プロデューサがフローを FlowMaximum のメッセージ数から FlowMinimum に、あるいはその反対に調節するときの調節期間の秒数。
プロデューサがフロー制御されている場合、指定された FlowInterval の秒数の間に FlowMaximum から FlowMinimum へと低速化されます。
MBean 属性 (アプリケーション モジュールには適用しない):
FlowControlParamsBean.FlowInterval
最小値:
0
最大値:
2147483647
フロー ステップ プロデューサが [最大フロー] のメッセージ数から [最小フロー] に、またはその反対にフローを調整するときに使用するステップ数。具体的には、[フロー間隔] の調整期間が [フロー ステップ] 数に分割されます (たとえば、60 秒を 6 ステップで除算するとステップあたり 10 秒になります)。
また、[最大フロー] と [最小フロー] の差をステップに分割することにより、移動 (調整率) が計算されます。各フロー ステップでは、次のように、現在の条件に基づき必要に応じてフローが上方または下方に調整されます。
下方への移動は、[フロー間隔] で指定した時間の経過に伴い、[フロー ステップ] で指定した値に従って幾何的に減衰します (100、50、25、12.5 など)。
上方移動は線形です。差は単純にステップ数で除算されます。
MBean 属性 (アプリケーション モジュールには適用しない):
FlowControlParamsBean.FlowSteps
最小値:
1
最大値:
2147483647
フロー制御を有効化 接続ファクトリを使用して作成されたプロデューサでフローを制御できるかどうかを指定します。true に設定すると、JMS サーバまたは送り先が、指定された上限バイト数またはメッセージしきい値に達した場合に、関連するメッセージ プロデューサが低速化されます。
MBean 属性 (アプリケーション モジュールには適用しない):
FlowControlParamsBean.FlowControlEnabled
一方向送信モード この接続ファクトリを使用して作成されたメッセージ プロデューサが、通常の非永続メッセージのパフォーマンスを向上させるために、一方向メッセージ送信を許可されているかどうかを指定します。これが有効化されていると、関連付けられたキュー センダやトピック パブリッシャは、対象送り先のホスト JMS サーバからの応答を内部で待機することなく、メッセージを送信できます。
一方向送信は、プロデューサをホストしている接続ファクトリと、対象送り先をホストしている JMS サーバが、同じ WebLogic Server インスタンスに対象指定されている場合にのみサポートされます。加えて、一方向送信は、XA、トランザクション セッション、永続的なメッセージング、順序単位、作業単位、分散送り先、クライアント サイドのストア アンド フォワードなど、より高度なサービスの品質 (QOS) 機能については、サポートされません。プロデューサと対象送り先が、別個のドメインにある場合、または上記のより高度な QOS 機能のいずれかが検出された場合には、一方向モードの設定は無視され、代わりに標準の双方向送信が使用されます。
- [無効]
一方向送信は無効化されます。
- [有効]
一方向送信は、キュー センダまたはトピック パブリッシャに対して許可されます。
- [トピックのみ]
トピック パブリッシャのみが、一方向送信を許可されます。
注意 : 一方向のパフォーマンスからメリットを得るには、デフォルトの
One-Way Send Window Size
値も、より大きい値にコンフィグレーションする必要があります。OneWaySendWindowSize - 1
個のメッセージごとに、一方向ではなく双方向が使用されるため、OneWaySendWindowSize = 1
の場合、すべてのメッセージが実際には双方向となります。MBean 属性 (アプリケーション モジュールには適用しない):
FlowControlParamsBean.OneWaySendMode
一方向送信ウィンドウ サイズ
One-Way Send Mode
が、キュー センダやトピック パブリッシャによる一方向送信を許可するように設定されている場合に、ウィンドウごとの送信されるメッセージの最大数を指定します。ウィンドウ サイズでは、さらなる一方向送信を続行できるようになる前に、プロデューサを規定するため双方向メッセージが必要な場合が決定されます。一方向のパフォーマンスでメリットを得るためには、一方向送信を有効化するだけでなく、デフォルトの
One-Way Send Window Size
値を、より大きい値にコンフィグレーションする必要があります。OneWaySendWindowSize - 1
個のメッセージごとに、一方向ではなく双方向が使用されるため、OneWaySendWindowSize = 1
の場合、すべてのメッセージが実際には双方向となります。MBean 属性 (アプリケーション モジュールには適用しない):
FlowControlParamsBean.OneWaySendWindowSize
最小値:
1
最大値:
2147483647
![]() ![]() |