XREAでボトルネックになっている箇所を探したら
XREAで携帯向けコンテンツの提供を始めようとしているのだが、なぜか表示が遅い。すごく悩んでいたのだが、ようやく原因がわかった。原因は「携帯向けGoogle Adsense(PHP版)を貼り付けていること」だった。
最初は何が悪いのか全くわからなかった。とにかくリクエストから表示まで10秒くらいかかってしまう。どこがボトルネックになっているのか調べようとして、実際にやってみた作業はコレ。
スクリプトにやたらめったらprint(microtime(true));を記述
この記述がある回数だけ時刻が表示されるわけだが、その差が大きい部分を追うことで、実際にボトルネックになっている箇所を見つけるわけだ。で、追っかけてみた結果、Smartyテンプレート内で「include」している箇所で時間がかかっていることがわかった。「え〜なぜ?」と思いつつ、更に調べてみてincludeされているファイル内に記述されているGoogle Adsense携帯版の記述がボトルネックになっていることがわかった。
そこで「そういえばGoogle Adsense携帯版の実際に記述するコードが、最近やたら長くなったよな」と思い出したので、昔使っていたコードを入れてみた。そしたらなんと動作しない!。Google Adsense携帯版は以前は単にGoogleに配置されているファイルをrequireしているだけだったのだが、そもそもその記述自体がXREAでは許可されていないのだ。つまり「そういうこともあるからGoogle Adsense携帯版のスクリプトが長くなった」らしい。
ということで、副産物的にGoogle Adsense携帯版のことがわかったのだが、結局Google Adsense携帯版は、XREA環境ではどうやっても遅いのだ。仕方なく広告を削除した。
さて、改善されないのか・・・XREAにリクエストを出さねば・・・。