2016-06-23 26 views
0

私は自分のサイト(cronによって実行された)のすべてのページをクロールしてデータを更新しようとしています。約500ページあります。最も効率的なページヒットを生成する最も効率的な方法

私は2つのオプションを試しました。

  • PHPシンプルなHTML DOMパーサ
  • PHPのget_headers上記のいずれかを使用して

、各ページには、大まかにロードするために1.402秒かかります。合計で約570秒かかります。

これを行うより効率的な方法はありますか?

+0

リクエスト、またはファイルシステムを使用してWebサーバーを操作していますか? – Luke

+0

私はウェブサーバーを経由しています – danyo

+0

可能であれば、ファイルシステムを通してファイルを読み込みますか?それがあなたにどんなスピードの利益をも与えるかどうか見てください。 HTTPリクエストと(おそらくApache)おそらく遅くなっています。 – Luke

答えて

0

並行して(つまり同時に)ページをリクエストします。多くの人が一度に発砲するので、各要求がどのくらいの時間かかるかは問題になりません。

あり、これを達成するための多くの方法がありますが、ここでは一例です:

curl www.website.com/page1 & 
curl www.website.com/page2 & 
curl www.website.com/page3 & 

使用xargsのか、あまりにも多くの同時接続を使用してサーバを氾濫防止するための他のツール。例えばBash script processing commands in parallel

単一のPHPスクリプト内でコマンドを並列に実行することは複雑になる可能性があります。可能であれば、コマンドラインを使いやすくする。

関連する問題