パッケージ org.springframework.util

クラス ConcurrencyThrottleSupport

java.lang.ObjectSE
org.springframework.util.ConcurrencyThrottleSupport
実装されたすべてのインターフェース:
SerializableSE
既知の直属サブクラス
ConcurrencyThrottleInterceptor

public abstract class ConcurrencyThrottleSupport extends ObjectSE implements SerializableSE
特定のリソースへの同時アクセスを調整するためのサポートクラス。

基本クラスとして使用するように設計されており、サブクラスはワークフローの適切なポイントで beforeAccess() メソッドと afterAccess() メソッドを呼び出します。afterAccess は通常、finally ブロックで呼び出される必要があることに注意してください。

このサポートクラスのデフォルトの同時実行制限は -1(「無制限の同時実行」)です。サブクラスはこのデフォルトをオーバーライドできます。使用している具象クラスの javadoc を確認してください。

導入:
1.2.5
作成者:
Juergen Hoeller
関連事項:
  • フィールドサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected Log
    直列化を最適化するための一時的。
    static final int
    並行性を「オフ」に切り替える: つまり、同時呼び出しを許可しません。
    static final int
    任意の数の同時呼び出しを許可します。つまり、同時実行を抑制しません。
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected void
    具象サブクラスのメイン実行ロジックの後に呼び出されます。
    protected void
    具象サブクラスのメイン実行ロジックの前に呼び出されます。
    int
    許可される同時アクセス試行の最大数を返します。
    boolean
    このスロットルが現在アクティブかどうかを返します。
    void
    setConcurrencyLimit(int concurrencyLimit)
    許可される同時アクセス試行の最大数を設定します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • フィールドの詳細

    • UNBOUNDED_CONCURRENCY

      public static final int UNBOUNDED_CONCURRENCY
      任意の数の同時呼び出しを許可します。つまり、同時実行を抑制しません。
      関連事項:
    • NO_CONCURRENCY

      public static final int NO_CONCURRENCY
      並行性を「オフ」に切り替える: つまり、同時呼び出しを許可しません。
      関連事項:
    • logger

      protected transient Log logger
      直列化を最適化するための一時的。
  • コンストラクターの詳細

    • ConcurrencyThrottleSupport

      public ConcurrencyThrottleSupport()
  • メソッドの詳細

    • setConcurrencyLimit

      public void setConcurrencyLimit(int concurrencyLimit)
      許可される同時アクセス試行の最大数を設定します。デフォルトの -1 は、同時実行制限がまったくないことを示します。

      原則として、この制限は実行時に変更できますが、通常は構成時間の設定として設計されています。

      NOTE: 実行時に -1 と具体的な制限を切り替えないでください。同時実行数の一貫性が失われます: 制限値 -1 は、同時実行カウントを完全にオフにします。

    • getConcurrencyLimit

      public int getConcurrencyLimit()
      許可される同時アクセス試行の最大数を返します。
    • isThrottleActive

      public boolean isThrottleActive()
      このスロットルが現在アクティブかどうかを返します。
      戻り値:
      このインスタンスの同時実行制限がアクティブな場合、true 
      関連事項:
    • beforeAccess

      protected void beforeAccess()
      具象サブクラスのメイン実行ロジックの前に呼び出されます。

      この実装では、同時実行性スロットルが適用されます。

      関連事項:
    • afterAccess

      protected void afterAccess()
      具象サブクラスのメイン実行ロジックの後に呼び出されます。
      関連事項: