0

いくつかの Web サイトから HTML の結果を取得するには、cron (php) スクリプトを作成する必要があります。

私のデータベースに 50 の Web サイト レコードがあるとします (つまり、http://www.somewebsite.com/page.php )。したがって、cron ジョブは x 分ごとに実行されるように設定されます。実行中は、データベースからレコードを読み込み、各 Web サイトのステータスを確認し、そこから HTML の結果を取得して分析します。

私の懸念は、n 番目のレコードの Web サイトが応答しない場合、または読み込みに時間がかかる場合 (つまり、海外の Web サイト)、n + 1 のレコードは実行されず、n 番目のレコードが終了するまで実行されないことです。その後、この cron ジョブが完了するまでにしばらく時間がかかります。

スクリプトをブラウザ上で実行すると、ajax async を使用して簡単に処理できますが、これは cron ジョブであるため、この状況を処理する方法がわかりません。

4

2 に答える 2

0

できることは次のとおりです。crontab から sh スクリプトを実行し、スクリプトで非同期タスクを処理する .php プログラムを呼び出します。

于 2016-07-24T05:24:24.397 に答える
0

「非同期」が必要な場合は、他の言語に移行した方がよいと思います。これは、システム アーキテクチャ全体を作成する方法に対する大幅なアップグレードです。したがって、これは PHP 開発者にとって大きなアップグレードであり、私は PHP に多くを費やし、NodeJS を調べてより良いソリューションを探しています。また、「Aync」という用語が導入されていますが、PHP は内部的にもコアからもそのようなニーズをまだサポートしていません。

于 2017-07-14T13:49:23.843 に答える