PageSpeed Serviceは自動的にアプリケーションのパフォーマンスを最適化するGoogleのサービスです。

PageSpeedってサイトのパフォーマンスを調べてくれるサービスだと思ってましたが、それはPageSpeed Insights で、PageSpeed Serviceはそれとは別モノみたいです。

明示的に試した訳ではありませんが、

How it works

You sign up and provide us with your serving and reference domains.

You send traffic to PageSpeed Service by pointing your DNS CNAME entry to ghs.google.com.

という事です。appengine の独自ドメインでお馴染みのやつですね。

ただこのやり方(sign-upしてDNSを云々)をとらないでも、Page Speed Serviceは Appengine からなら簡単に利用できます。(多分java sdk1.7.0以降)

特徴と制限

・通常の帯域幅の費用に加えて、帯域幅のギガバイトあたり0.39ドルかかる

・Datastore が HRD の場合のみ使える(マスター/スレーブはダメ)

・POSTリクエスト等の投稿の際には適用されない

・32MB以上のレスポンスは切り捨てられる。(音声やビデオ等の提供時には要注意)

・app.yaml(Python)やappengine-web.xml(Java)に除外URLリストを設定できるらしい

有効化するには

Appengineコンソールの[Application Settings]ページで、[Enable Page Speed Service]のチェックボックスをチェックして、[Save Settings]をクリックするだけです。

有効化した感じ

流石に spin-up まで早くなる訳ではありませんが、ブラウザの表示が一気に行われる感じになりました。効いてます。

事前にApp Engine PageSpeed Service Preview Chrome extension なる Chrome のエクステンションをインストールすれば、事前にPageSpeed の導入効果を測定できますんで、試してみてください。

有効化すると、staticなファイル達のパスがおそらくGoogle側のキャッシュサーバのURLに書き換えられます。

1日使ってみた印象は、ベータ版の様なのでまだ Stable で無いなという印象です。

まだちょっしか使ってませんが、稀にファイルが表示されなかったりする事もありました。

安定してたらまた試したいです。

参考にさせて頂いたサイト達

MTG-Guild 開発日誌: 読解練習:Google App Engine Python SDK Release Notes 1.7.0

Adjusting Application Performance – Google App Engine — Google Developers

Measure Speed up – PageSpeed Service — Google Developers