つっこみ

つっこみ欄にコメントを記載して[つっこむ]ボタンを押してください。
お名前欄の記載は省略できます。

お名前 :
←ここのテキストボックスはスパム対策用なので何も入力しないでください
つっこみ :

[キャンセル]


つっこみ先の記事

・ Google toolbar と squid の微妙な関係

数日前からWWWをうろうろしているとよく固まるのです。ブラウザが固まるのではなくて、ネットワークが固まって流れないようになります。Bフレッツの調子が悪い? と疑ったりもしますが、おうちサーバからいろいろ調べてみる限りは異常は見られません。それで、いつも使っている squid proxy cache を切ってみると、問題なく流れるようになるんですねー。

今まで特に問題なかったのに、なんで急に squid を通すとおかしくなるようになっちゃったのだろう? としばらく謎だったのですが、squidのアクセスログを眺めていると謎が解けました。私の使っているブラウザにはポップアップ広告除去のために Google Toolbar が入っているのですが、これにくっついてるPageRank表示機能を機能させるために、ページを移動するたびに

GET http://216.239.39.104/search? なんたらかんたら
のようなリクエストを発行するようなのです。それで、たまたまコケてただけと思うのですが、問題が起こっているときにこのIPアドレスにpingをうってみると反応がないのです(^^;)。もちろん www.google.com と同じでIPアドレスはぐるぐる回っているのですが、これが逆に問題。squidでは『一定数』のリクエストに対して同時に処理しようと試みるのですが、反応がない場合は数秒~十数秒間待ちつづけてしまいます。で、この間に辛抱たまらず他のページをうろうろ移動しようとすると、GoogleToolbarのリクエストだけで『一定数』に達してしまい、他のリクエストを処理できない→固まる、ということになってしまうようです。

ということで、対策。要はsquidを通さなければうまくいくので、proxy自動設定に除外リストを加えてみました。

function FindProxyForURL(url,host)
{

    if (!isInNet(myIpAddress(),"10.0.0.0","255.255.255.0")) {
        return "DIRECT";
    }

    if (isPlainHostName(host)
        || dnsDomainIs(host,"toriyu.dd.que.ne.jp")
        || 略
        || url.match(/search\?/)
    ) {
        return "DIRECT";
    } else {
        return "PROXY 10.0.0.1:3128; DIRECT";
    }
}

これで多い日も安心。どうせ動的なページではsquidは役に立たないのだから、 url.match(/\?/) としてしまっても良いかもしれません。


■この記事への permanent link URL(下にいくほどファイルサイズが大きくなります)
  http://toriyu.jp/hitorigoto/id1008.html
  http://toriyu.jp/hitorigoto/2003-11-14.html (1日分)
  http://toriyu.jp/hitorigoto/2003-11.html#id1008 (1ヶ月分)