@IT編集部の西村賢がRuby/Rails関連を中心に書いています。

Herokuは東京リージョンにいつ来るのか?

»

 昨日(2011年12月15日)の夜、東京・六本木で、Heroku Drinkupのイベントが行われました。セールスフォース・ドットコムのイベント、「CloudForce 2011 Japan」のために来日していた、HerokuのMorten Bagai氏やKeith Rarick氏が会場に来て、日本のHerokuユーザーやRuby/Rails関係者らと交流していました。Herokuは今やポリグロット(多言語、多プラットフォーム対応)なPaaSなので、Node.js方面からの参加もあったようです。100人前後集まって、大変盛況でした。

 Heroku関係者や、Amazon Web Services(AWS)の方とお話しているときに、当然のように「Herokuは、いつ東京に来るのか?」が話題となりました。HerokuはAmazon EC2で動いていますが、東京リージョンでは動きません。もちろん、太平洋を往復する数百msの遅延を気にしなければ、日本から北米リージョンのHerokuを使うことに何の問題もないわけですが、遅延は小さいに越したことはありません。静的ファイルをCDNに置くなどの工夫も少なくて済むケースがあることでしょう。

 例えば、Cedexisという企業のMarty Kagan氏が公開した各種クラウドのレスポンスを可視化した資料(PDF)から2枚ほど以下に引用します。計測は2011月1月で東京リージョンが入っていませんが、傾向は分かります。当然、近いほど応答時間は短いですね。

Map01

Map02

 東京リージョンでHerokuのインスタンスが動く日が来るのか、それはいつなのかということについて、今のところ公式見解は発表されていません。しかし、Heroku関係者らいわく、東京リージョンに限らず、ヨーロッパからの要望も多いので、マルチリージョン対応は具体的に検討していて、2012年中にも提供できるのではないか、ということでした。公式見解ではありませんが、期待できますね。

 難しいのは、Add-onsのようです。MongoHQやMemcache、REDIS TO GOといったサービスは、同一データセンター内か、少なくとも地理的に近いところで動いてなければ意味がありません。Herokuのポテンシャルをフルに提供するには、これらサードパーティのサービスプロバイダにも一緒に東京リージョンサポートを開始してもらう必要があります。

 Add-onsの扱いも含めて、現在は、どうやってマルチリージョンサービスを提供するのが正解か、それを検討している段階といいます。HerokuはHTTPルーティングにErlangベースのルーティング・メッシュを構築していますが、これをグローバル、マルチリージョン対応で透過的に動かすことができればベストかもしれません。開発者はどのリージョンのデータセンターにデプロイするかを気にせずに、Heroku側が複数リージョン(複数データセンター)の動的バランシングをやってくれる、というモデルです。利用者の8割が日本からであるサービスで、10個のDynoを立ち上げると、自動的に8個のDynoが東京リージョンのEC2で動くというようなイメージでしょうか。しかし、データベースはどこに置くのよ、大陸間レプリケーションとかどうすんのよとか言い出すと、とてもシンプルな解があるように思えません。

 もっとも、ほとんどの利用者からしてみれば、グローバルな自動バランシングは不要かもしれません。Facebookアプリで、あっという間に全世界に数千万ユーザーというものなら別ですが、多くのサービスは特定言語、特定地域をターゲットとしているのではないでしょうか。そういうこともあって、Heroku Drinkupに参加していた、あるWebサービス開発者は、明示的に東京リージョンを選択する形でHerokuが使えれば十分だし、サードパーティのAdd-onsについても、徐々に増えていけばいいのではないかと話していました。

 AWSは12月14日に、南米リージョンとしてブラジルに新たに拠点をオープンしました。ますますHerokuのマルチリージョン対応のニーズが高まりそうですね。

Comment(0)

コメント

コメントを投稿する