なぞの帯域制限?

ちわ~、たけけんです。

まずはこのZabbixの画像を見てください。

net01

この画像は、Zabbixのウェブ監視の機能で(たぶん)ブラウザからアクセスしたときの速度をはかっています。

んで、左の方を見てみると、ググっと数値が下がったところがあります。これはZabbixを設定してからだいたい1日経ったくらいですかね。監視の設定をした後にグラフをちょこちょこ見たりはしないんで、気づいたのはつい最近でしたのでした。

サーバーが落ちてた訳じゃないしねー。

当時の記憶はほとんど残ってないんだけど、何をしてたか考えると、まず出てくるのがやっぱりpagespeedだ。

とりあえずoffにしてみたけど変わりないし。と、唐突に今思い出したのだが、そういえばpagespeedを全体に効かせてたのをVhostだけにしたんだったなあ。なんだできるじゃん!ってやったのが多分時期が一致??

もしかしてそれかも・・・と。

何かを文字にしてみるというのは、なかなか脳を刺激するんだなあと思ったな(笑)

 

では、さっきまでは何をしてたかというと帯域制限といえば、まずは過去にやったmod_bwを思い出した。

またこないだの、Xcacheみたいに設定したときからそのまま放置しているんじゃあ!と思って調べてみたけど、さすがにこれは放置はされておらずに、跡形ごとなくなっていました。

あと気になるのはpagespeed.confの中に、なにか制限をするもののような記述があるのかどうか。だね。

ざっと抜き出すと。

# grep -v '#' /etc/httpd/conf.d/pagespeed.conf | grep -v '^$'
<IfModule !mod_version.c>
  LoadModule version_module /usr/lib64/httpd/modules/mod_version.so
</IfModule>
<IfVersion < 2.4>
  LoadModule pagespeed_module /usr/lib64/httpd/modules/mod_pagespeed.so
</IfVersion>
<IfVersion >= 2.4.2>
  LoadModule pagespeed_module /usr/lib64/httpd/modules/mod_pagespeed_ap24.so
</IfVersion>
<IfModule !mod_deflate.c>
 LoadModule deflate_module /usr/lib64/httpd/modules/mod_deflate.so
</IfModule>
<IfModule pagespeed_module>
  ModPagespeed off
  ModPagespeedInheritVHostConfig on
  AddOutputFilterByType MOD_PAGESPEED_OUTPUT_FILTER text/html
  ModPagespeedFileCachePath            "/var/cache/mod_pagespeed/"
  ModPagespeedEnableFilters rewrite_javascript,rewrite_css
  ModPagespeedEnableFilters defer_javascript
  ModPagespeedFileCacheSizeKb          102400
  ModPagespeedFileCacheCleanIntervalMs 3600000
  ModPagespeedLRUCacheKbPerProcess     1024
  ModPagespeedLRUCacheByteLimit        16384
  ModPagespeedCssFlattenMaxBytes       2048
  ModPagespeedCssInlineMaxBytes        2048
  ModPagespeedCssImageInlineMaxBytes   2048
  ModPagespeedImageInlineMaxBytes      2048
  ModPagespeedJsInlineMaxBytes         2048
  ModPagespeedCssOutlineMinBytes       3000
  ModPagespeedJsOutlineMinBytes        3000
  ModPagespeedFileCacheInodeLimit        500000
  ModPagespeedJpegRecompressionQuality -1
  ModPagespeedImageLimitOptimizedPercent 100
  ModPagespeedImageLimitResizeAreaPercent 100
  ModPagespeedMaxSegmentLength 250
  ModPagespeedCombineAcrossPaths off
  ModPagespeedAvoidRenamingIntrospectiveJavascript on
  ModPagespeedEnableFilters canonicalize_javascript_libraries
  ModPagespeedLibrary 105527 ltVVzzYxo0 //ajax.googleapis.com/ajax/libs/prototype/1.6.1.0/prototype.js
  ModPagespeedLibrary 92501 J8KF47pYOq //ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js
  ModPagespeedLibrary 141547 GKjMUuF4PK //ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js
  ModPagespeedLibrary 43 1o978_K0_L http://www.modpagespeed.com/rewrite_javascript.js
  ModPagespeedRespectVary on
  <Location /mod_pagespeed_beacon>
    SetHandler mod_pagespeed_beacon
  </Location>
  ModPagespeedStatistics off
  <Location /mod_pagespeed_statistics>
   Order allow,deny
   Allow from localhost
   Allow from 127.0.0.1
   SetHandler mod_pagespeed_statistics
  </Location>
  <Location /mod_pagespeed_console>
   Order allow,deny
   Allow from localhost
   Allow from 127.0.0.1
   SetHandler mod_pagespeed_console
  </Location>
  ModPagespeedMessageBufferSize 100000
  <Location /mod_pagespeed_message>
   Allow from localhost
   Allow from 127.0.0.1
   SetHandler mod_pagespeed_message
  </Location>
  <Location /mod_pagespeed_referer_statistics>
   Allow from localhost
   Allow from 127.0.0.1
   SetHandler mod_pagespeed_referer_statistics
  </Location>
</IfModule>

とりあえず、有効なものを抜き出して上から見ていてても、それらしきものはないんだよに。

うーん。

まず最初に気になったのはLoadModule deflate_moduleだが、これもON・OFF試したけど、とくに変わりはなかった。これはファイルの圧縮だから、まあ関係なかろう。

続いて下に降りていくと、出てくるところはキャッシュ関連っぽいし、関係ないよなっとなあ。

そしてまた下に降りてみて気になったのはここです。記述を読む限りは何か外部から読み取っているらしいが。と思って調べてびっくりポン。

ModPagespeedLibrary 105527 ltVVzzYxo0 //ajax.googleapis.com/ajax/libs/prototype/1.6.1.0/prototype.js
ModPagespeedLibrary 92501 J8KF47pYOq //ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js
ModPagespeedLibrary 141547 GKjMUuF4PK //ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js
ModPagespeedLibrary 43 1o978_K0_L http://www.modpagespeed.com/rewrite_javascript.js

こんな長いのをググって答えが出るのなあと思ったんだけど、すぐに出た。いっぱい出た。ほげ!

どうもGoogleのCDNを使っているらしいのだ。

ほぉ~。

新たな発見だった。

だが、たぶん今回の疑問には関係ないはず。。。

 

ぬぅ、答えが出ない。見えない。

勝手な想像だけど、Zabbixがサーバーに負荷をかけないように調整しているとか。それに費やした時間がだいたい1日かかったとか。

でもなあ、こいつはそんな思いやりのあるプログラムなのかと思うんだけど、今のところはそれくらいしか思いつかないや。

なぜにそう思うかというと、1つのテストをしてみた結果なんだけども。

実際に自分のPCからこのウェブページから画像をダウンロードしてみたのだが別に速度は普通に速かったのね。

すなわちこのグラフのデータは当てはまらなかったということなんだ。Zabbixのテストだけが、あたかも制限をかけられたかのような波形になっているに過ぎないようなのね。

 

忘れないうちにやっておこうと、Pagespeedを全体にかけてないからという事も、逆に試してみたものの今と同じ結果だった。結果が変わってないってのも大きな問題なんだが・・・

今回は、いったいどうなってるんだかさっぱり分からないけど、またどこかでポロッと解決する時が来るはずなので、その時に分かればいいかなあ。