[PHP-users 19776]Re: リンク切れHTMLファルのチェック

Teruyuki Wakamatsu terupost @ mxa.mesh.ne.jp
2004年 1月 8日 (木) 11:12:54 JST


wakaです。
いろいろありがとうございます。

> GETメソッドでも、データ本体を取得しないようにすれば
> 速度は基本的に変わらないと思いますよ。
> ただ、使用される関数・クラス等が高次なものだと
> その点の柔軟性がないかもしれません。
先に教えていただいたconditional-getってオプションつける
ものですか?これ少しわかんない部分がありましたので
調べてるうちに僕の用途ではheadメソッドが使える事を
理解したんです。1つ勉強です。
>
>
> (しつこいですが)ぜひコマンドライン版を使ってみてください。
> たぶん、ウェブからやらせるより楽だと思いますので。
はい是非やってみますね。今はこの作業を早く1段落しなければ
ならないので、来週あたりに試します。

> あと個人的な興味なのですが、
> チェックURI数と処理時間の統計データに関心があります。
> サーバーが落ちていたりしてタイムアウトを待たなければいけない
> URIの数が一番影響を及ぼすのではないかと推測しますが、
> 後日で結構ですので、ぜひレポしていただけると嬉しいです。
> (マシンスペック/ネット環境/手法と、
>  チェックURI数/正常URI数/異常URI数/処理時間など)
何度かやってみましたがアバウトに報告します。
(報告が下手でしたらすみません。)
■マシンスペック/ネット環境
ホスティングのサーバ0ーです。
CPU:Pentium III 1GHz (256K/FSB133)
メモリ:512MB
ハードディスク:7200rpm IDE (RAID 1)
OS:RedHat Linux 7.0 0.970
■手法その他
PostgresでURLリストを管理しPHPで処理を使ってます。
URLのほとんどはクリーニングしたばかりなので無効の
ものはないですから全て正常な数値が返ります。

pg_execで指定件数のURLを抽出して、ループで1件づつ
fsockopen->HEADリクエスト->返った内容の結果をブラウザ
にリストとして表示させてます。

・100件で15秒程度で結果が返ります。
  全部正常でホストに接続もリクエストもできました。
・1000件だと50秒で返ります。
  4件のみホストに接続不可。内2件404、2件は直接確認で正常でした。

プログラムはset_time_limit(300)にして期限時間を延期してます。
件数があまりに多いとブラウザが真っ白のままとまってしまいます。


朝なのでサーバー負荷が低いのでサクサク状態のテストです。
昨日の夕方〜夜(混雑時間)はもう少し時間がかかっていた
気がします。件数を変えては数回試したのでタスクが残りっぱなし
になっていてレスが遅かったり、返らなかったりしたかもしれない
です。

なにしろ、とりあえずここまででもかなり便利です。



PHP-users メーリングリストの案内