1. ホーム
  2. Blog
  3. [RailsConf2008] 欧米のRailsサイトのDeploy環境の事例

[RailsConf2008] 欧米のRailsサイトのDeploy環境の事例

大井 宏友

大井 宏友

イベント,海外

大井宏友です。RailsConf2008ではRailsアプリケーションのOptimizeやスケーリングに関するセッションが多かったり、スポンサーもそれプラスリリース管理まで踏み込んだ製品が多く、欧米ではRailsはプロトタイピング(アイデアをいち早く形にするという意味で)の段階を超えて本格運用の段階に来ていることを実感しました。

ここではカンファレンス全体で紹介されていたいくつかのサイトの実行環境を取り上げます。

事例1:巨大FaceBookオンラインゲーム「WARBOOK

1000万ユーザー、一日40万時間プレイされているオンラインゲーム「World of Warcraft」(これもRails)のFaceBook対応版(月間10億PV)がどのような構成で動いているのか発表がありました。

構成
  • 静的ファイルはLighttpd(1.4.13)で外だし。
  • ロードバランサーは外だししてPerlbalで。
  • 多数のリクエストに対してはMongrelサーバを追加(現在12個)。
  • DBサーバ1つ
  • 静的アセット用にサーバ一つ
  • memcache用サーバ一つ
ポイント
  • memcache。
  • Amazon(EC2+S3)の利用

を採用して上記の構成で解決。

コスト
  • サーバコスト:月間$2,000(!)
  • 収入:月間$100,000

事例2:GitHub

github

  • Bj:background job
  • Sphinx:Free open-source SQL full-text search engine
  • MC:memcache
  • Nginx:high speed httpd and reverse proxy

事例3:YellowPages.com

YELLOWPAGES_COM

前記事にある通り、当初はこの構成だがその後ApacheをNginxに置き換えた。

雑感

Nginx+Mongrelの台頭

日本ではあまり聞かないのですが、アメリカではApache(mod_proxy_balancer)の代わりにNginxが普通に使われているようです。Nginxが何かという説明もありませんし、一般的なスケーリングの話の中の事例でも普通にNginxが登場します。

memcacheはお約束

また、memcacheも、Optimize&Scalingのどのセッションに行っても異口同音に話していました。Rails2.1にはmemcachedクライアントが含まれますし、memcacheを使うというのは「お約束」の領域に来ているのかもしれません。

トップへ戻る