メインコンテンツへスキップ

ジョブキュー

A-Parserの動作はタスクキューに基づいています。タスクを追加するとそれらが順番に実行されるため、スクレイパーに長時間の作業を任せることができ、終了を監視し続ける必要がありません。

タスクキュー

A-Parserにおけるタスクキューの主な利点

  • 複数のタスクの同時実行をサポート
  • タスク実行の一時停止および完全停止
  • タスクの中間結果の保存。これにより、スクレイパーの停止(またはコンピュータ/サーバーの電源オフ)時点から作業を再開可能
  • キュー内での個別のタスクの移動
  • 作成済みタスクの編集、および再利用のためのタスクのコピー機能
  • 完了したタスクは完了済みタスクキューに移動し、各タスクの結果の確認やダウンロードが可能

動作アルゴリズム

キューのアルゴリズム

タスクの実行スロット

同時に実行されるタスクの数は実行スロットによって調整されます。このパラメータは一般設定(Settings -> Global Settings -> Max active tasks)で指定します。デフォルト値は1に設定されており、1つのタスクが実行され、他のタスクは順番待ちとなります。

キュー内のタスクステータス

各タスクにはステータスがあります。以下は可能な状態のリストです:

ステータス説明
waitSlotタスク実行のための空きスロット待ち。新しいタスクは常にこのステータスでキューに入ります
workタスク実行中
pausedタスク一時停止中。この間、実行スロットは保持され、次のタスクは開始されません
stoppedタスク停止中。実行スロットが解放されます
completedタスク完了。すべてのクエリが処理され、タスクは完了済みタスクキューに移動し、実行スロットが解放されます

Max active tasks (最大アクティブタスク数)を1より大きく設定する場合、スレッド数が増加し、スクレイパーによる全体的なリソース消費も増加することを考慮する必要があります。

ヒント

最高の動作速度を実現するには、特定のコンピュータ/サーバーに対して最適化されたスレッド数を設定した1つのタスクのみを常に使用してください。