フォーム バッチ アクション

フォーム アクションを展開する場合、TotalAgility は、サーバーで実行される複数の連続したフォーム アクションをバッチ処理して単一の HTTP リクエストにまとめ、最高のパフォーマンスを提供します。HTTP リクエスト内のアクションの各バッチは、クライアント ブラウザに結果を返す前にサーバーで実行されます。

サーバー側のフォーム アクションは次のとおりです。

  • ビジネス ルール

  • DB クエリ

  • .Net メソッド

  • RPA

  • RESTful サービス

  • ジョブから言語を設定

  • Web サービス

他のすべてのフォーム アクションはクライアント ブラウザで実行する必要があるため、クライアント側と見なされます。

サーバー側のフォーム アクションのシーケンス内でクライアント側のフォーム アクションを混在させると、クライアント側のフォーム アクションがサーバー側の一連のフォーム アクションの中間に配置されている場合、アクションのバッチが分割される可能性があります。これにより、サーバー側のフォーム アクションのバッチごとに 1 つずつ、複数の HTTP リクエストが発生します。

次の例は、フォームの Onload イベントに割り当てられた一連のフォーム アクションを示します。

  • DotNet アクション 1

  • DotNet アクション 2

  • DotNet アクション 3

  • SamePage アクション 1

  • WebService アクション 1

  • WebService アクション 2

  • SamePage アクション 2

「SamePage アクション 1」は他のサーバー側のフォーム アクションの中間に配置されているため、フォーム アクションの 2 つのバッチが発生し、2 つの HTTP リクエストが必要になります。

一方で、クライアント側のアクションが次の順序でグループ化されている場合、フォーム アクションの 1 つのバッチと 1 つの HTTP リクエストのみが発生します。

  • DotNet アクション 1

  • DotNet アクション 2

  • DotNet アクション 3

  • WebService アクション 1

  • WebService アクション 2

  • SamePage アクション 1

  • SamePage アクション 2

最高のパフォーマンスを得るためには、フォーム イベントに割り当てる際に、サーバー側のフォーム アクションをクライアント側のフォーム アクションに個別にグループ化することをお勧めします。これにより、クライアント ブラウザからサーバーに対して行われる HTTP リクエストの数を減らすことができます。

この操作は、クライアント側のアクションのシーケンスが重要な場合、つまり、アクションで更新するコントロールまたは変数がサーバー側のアクションを正しく実行するために必要な場合に、この操作は実行できないこともあります。