AppEngine有料オプションがCPU課金であるということの重要性

さらに、肝心の価格。思ったより高かったというのが正直なところだ。
GoogleAppsにおいて価格破壊戦略をとってきたGoogleが、Amazonとほぼ競合する価格を設定している。
価格を同レベルに設定するということは、Amazonに比較して明らかに差別化された何かがあると考えていると
とらえるのが普通だろうが、マイクロソフトへの牽制のつもりなのだろうか。
いずれにせよ、これでクラウドの中でPaaSと呼ばれるレイヤーは、ほぼ業界標準価格が決まったといってよい。

クラウド前哨戦会敵ミッション "Azure ready for release by end of year":Azureの鼓動:オルタナティブ・ブログ

AmazonGoogleでは時間単位の課金でも意味が違うのではないか、と思う。Amazonが起動時間をベースにしているのに対し、Google AppEngineはCPU時間。

Amazon EC2が起動時間をベースに課金しているのは、リクエストを受け取り可能にするためのステートを維持するためのコストがかかるからだろう。アプリケーションを利用可能にするためには、インスタンスを起動状態にしておかなければならないので、サーバリソースを食う。必然、課金はリソースの食い度合いに比例するように、起動時間ベースにせざるを得ない。

これと違って、AppEngineはWebアプリケーション実行環境のシェアリングなので、リクエストがなければステートを維持するためのコストはほとんどかからない。アプリケーションは何万何十万あってもかまわないし、リクエストを処理するためのプロセスはそのアプリケーションの間でシェアされる。もちろん、何万何十万が同時にフルに使われることはなく、たぶんそのうちのほとんどが利用率を低いパーセントに抑えられる。

誤解を恐れずに言えば、マシンレベルやOSレベルの仮想化(XenVMWareなど)で提供されるクラウドは、まだ十分にスケーラブルではない。だれでもいつでも使ってポイ捨て、みたいな富豪は許されない。AppEngineは、EC2のように自由度はないが、Webアプリケーション実行環境に限定する代わりに、数千数万といったアプリを使い捨てできるくらいのスケーラビリティを目指したと考えてよいと思う。

(追記)
24時間常にリクエスト処理がやってきて、複数サーバで負荷分散してるような比較的大規模サービスの場合は、インスタンスレベルで負荷を調整できるから、たぶんCPU時間も起動時間もあまりかわらなくなるかもしれない。そういう意味で、AppEngineがコスト面で生きてくるのは小規模のロングテールアプリである、という見方もできるのかな。