リクエスト
リクエストとは
パイプラインを実行したときの処理の一つ一つの単位を「リクエスト」と呼びます。
リクエストは、実行されるパイプラインのセンサーによってその単位が変わります。例えば、「フォルダにテキストファイルが追加されたされたかどうかを監視」アクションの場合、監視フォルダの中のファイル一つ一つに対してリクエストが開始されます。監視フォルダの内容に変化がなければセンサーが実行されてもリクエストは開始されません。同じように「メールを取り込み」アクションでは、受信したメール一つ一つに対してリクエストが開始されます。
ダイレクト型アクションの場合も同様です。「ブラウザからのフォームリクエストを受信」アクションでは、ブラウザからのHTTPリクエスト一つ一つに対して、パイプラインのリクエストが開始されます。
リクエストの実行順
開始されたリクエストは、パイプラインの定義に従って処理が実行されます。センサーステージで開始されたリクエストは、センサーの処理が終了するとフィルターへ受け渡すためにキューに内容が保管されます。フィルターステージの処理エンジンはこれを取得してフィルターアクションの処理を行い、続いて同じようにジョイントステージへと受け渡すためにキューに内容が保管されます。
各リクエストは各センサー/フィルター/ジョイントの処理エンジン内では完全に別スレッドで独立して実行されます。ですから、タイミングによっては先に実行されたリクエストよりも後から実行されたリクエストの方が早く終わることもあります。
特に、スケジュール型アクションの場合、監視間隔が処理時間よりも短くなるケースでは、処理が詰まってしまったり、追い越しが起きやすくなりますので十分注意してください。
リクエストのモニタリング
個々のリクエストの実行状況はいくつかの画面で確認できます。
パイプラインの設定やその確認テストを行っている間は、各パイプラインのメインページで最近実行されたリクエストの状況やログが確認できます。各リクエストのIDをクリックすれば詳細を確認したり、停止や再実行などの操作を行うこともできます。
運用中であれば、モニターが利用できます。リクエストモニターではすべてのパイプラインのリクエストを一覧で見ることができます。パイプラインを指定したり、日付を指定したりすることで必要なリクエストのみを見ることもできますし、エラーになったリクエストをまとめて再実行したりすることもできます。
リクエストモニターなどの詳細はコーディネーターの操作ガイドを参照ください。