スレッド プール

スレッド プール (TP) は、そのプール内のスレッドによるアクティビティ (スリープを含む) を自動化します。プール内の各スレッドは、個別の自動アクティビティを制御します。スレッド プールは、同期マップに関連付けることもできます。

TotalAgility には、すぐに使用できる以下のスレッド プールが用意されています。

  • デフォルトのスレッド プール

  • デフォルトの Transformation Server スレッド プール

  • ナレッジベース スレッド プール

デフォルトのスレッド プール: このスレッド プールは、非キャプチャ自動アクティビティに使用できます。TotalAgility には 16 個のスレッドが含まれるため、16 個の自動アクティビティを同時に実行できます。追加のアクティビティはスレッド プール キュー (TPQ) にキューイングされ、先着順で実行されます。

デフォルトの Transformation Server スレッド プール: このスレッド プールはキャプチャ自動アクティビティに使用できます。特定の Transformation Server インスタンスを割り当てて、さまざまなジョブを処理できるため、特定のインスタンスを優先度が高いタスク専用にすることができます。

ナレッジベース スレッド プール: このスレッド プールは、新たに作成された「ナレッジベースに追加」アクティビティに自動的に割り当てられます。32 個のスレッドで構成されています。大規模なドキュメントを追加する場合、このアクティビティの実行には時間がかかるため、ナレッジベース スレッド プールによって、このアクティビティが他のアクティビティ タイプのパフォーマンスを妨げるのが防止されます。

名前を変更したり、デフォルトのスレッド プールを削除したりすることはできませんが、他の設定は変更できます。

複数のスレッド プールを作成できます。複数のスレッド プールには、次の利点があります。

  • 長時間実行されるアクティビティを別のスレッド プールに配置できます。これにより、長時間実行されるアクティビティにより他の短時間実行されるアクティビティに遅延が発生することを防ぎます。たとえば、2 つのスレッド プールがある場合、スレッド プール 1 の短時間実行アクティビティは、スレッド プール 2 の長時間実行アクティビティの完了を待機せずに実行されます。

  • 同時呼び出しの数を制御することで、サイトのサイズを縮小して、潜在的なパフォーマンスの遅延を最小限に抑えられます。これは、同時呼び出し数に制限のあるライセンスを持つサードパーティのオブジェクト メソッドを自動アクティビティで使用する場合に役立ちます。たとえば、電子メール サーバーは一度に 10 件の同時通話しか処理できないといった場合に、これらの自動電子メール アクティビティの処理を効率的に処理するために、10 個のスレッドでスレッド プールを設定できます。

スレッド プールを作成すると、これらのスレッド プールをプロセスで使用できます。

スレッド プールをサポートするのはオンプレミスの TotalAgility のみで、オンプレミス マルチテナント環境または Azure 環境で実行される TotalAgility ではサポートされていません。

方法: スレッド プールの追加