2011-12-21

GAEとEC2

随分久しぶりです。
12月に入ってからは本当にあっという間に時が過ぎており、危うく更新を忘れる所でした。
本日は、友人の会社の5周年記念パーティに行って来ました。
150人位集まっており、弊社とは大違いだなぁと。
マズローの欲求で行くと昨年のうち(5周年)は、火事などの後で、生理とか生存がそもそも危うい状態でしたが。
今日のNさんの会社は既に親和か自我になってるなぁと本当に素晴らしいと思いました。
いや、ホント凄いなぁと思った。
来年こそはうちもぱーっとやりたいです!

さて、表題の件ですが、最近やはりもう、クラウドは既定路線なんですが、その先、そもそもEC2で良くって、GAEにする必要無いんじゃん?って意見もたまにあるので、その辺を酔っ払いながらも整理しておきます。
詳しくは別途、弊社で立ち上げるサイトに載せる予定ですが。

まず、GAEとEC2の違いとして、根本的には。
EC2はIaasで、GAEはPaasである、ということです。
これは、簡単に言うと、IaasはCPU/メモリ/HDDなどを提供するだけ、なのに対して、Paasはその上の実行環境も含めて提供する、ということになります。
極論すると、MWを提供するのかしないのか、です。
するのがPaasでしないのがIaasです。

で、GAEとEC2のメリット・デメリットですが。
一応、GAE派として、GAE側から立った視点で列挙してみます。

■GAEのメリット
-スケールし易い
 EC2はやはり自力でスケールさせるのが基本となると聞いてます。少なくともGAE程のスケールを自動で行う機構は別途構築しないと難しいでしょう。

-MWのメンテ不要
 これがダントツで大きいのですが、私はもうTomcatとかMySQLのパッチをあてるのはあまりやりたく無いです。これの意味する所は意外と大きくて、セキュリティレベルが相当高いです。

-冗長化も簡易
 EC2でも冗長インスタンスとかは作れると思いますが、所詮MWレベルの機能の組み合わせです。
 結局MySQLとかの運用の知識が必要になるので、やはりそれなりに大変です。

-キャパシティプランニングの簡素化
 全くしなくて良いとは言いませんが、足りなければ勝手に増えるアーキなので、事前にインスタンスを増やしておくとかってのは相当簡素に可能です。一応、アプリの性質に応じてインスタンス数をコントロールして課金を少なくする制御も可能ですが、気にするレベルには無いです。
 元々がRDBでは無いので、数の増大に対するインパクトが小さいのも特徴です。

-PGのみで運用可能
 ちょっと言い過ぎですが、上記に述べたメリットの最終結論の帰結として、こうなります。
 MWレイヤの考慮が全く不要になると言って過言ではなくなります。インフラ屋さん、さようなら、です。(自分もそうですが。。)
 しかし、世の中そうなるべきだと個人的には思ってます。

■GAEのデメリット(基本、反論含む)
-課金がわかりにくい
 EC2と比べるとわかりにくいとは思いますが、概ね安くなるのでは無いかと思ってます。
 弊社のWebサービスを例に、今後色々検証して情報公開して行きます。

-高額になる
 一定量以上使うと高額になる場合もあると思いますが、相当ヘビー且つ特殊な条件だと私は考えてます。そこまでCPUネックになるシステムは今の所経験上は考えにくいです。


-開発がしづらい
 ここからがキモい所ですが、弊社はSlim3を使ったり、様々な開発をベースに開発方法論を確立しております。私がACC時代含めて培った基幹システム構築に必要なノウハウも盛り込んで居るので、通常と比べても遜色ないと考えてます。

-ベンダーロックインになる
 これは唯一と言える反論が無いものになります。
 結局極端な話、将来に渡ってずっとGAEが比較的割安で在り続けるか保証の無い中で、ポータビリティ(アプリケーション自体の)が少ない作りをしてしまうことに対するリスク、です。
 これは存在しますが、Googleに限ってそれは(他よりも高い水準の価格帯に落ち着いてしまうこと)無い、と弊社は信じて進んでます。なので、敢えてベンダーロックインの方向に進んでます。これは戦略上及び好き嫌いの話なのです。NGな人は諦めてください。


と、言った所かなぁと思います。
GAEについて色々今後も書いて行きます。
初めてプレミアの課金が来た話とか、色々あるので、また。

0 件のコメント:

コメントを投稿