kurukuru-papaのブログ

主に、ソフトウェア開発に関連したメモを書き溜めたいと思います。

GAE/JRuby GAEで10個以上のWebアプリを同時稼動させる

GAEでは、1アカウントで作成出来るWebアプリの数が、10個に制限されています。あまり使い勝手が良くないですが次のようにすると10個以上のWebアプリを同時に動作させることが出来そうです。

考え方は簡単です。GAEは、10個のWebアプリに対して、各々複数バージョンを登録し、同時動作させる機能があるので、それを使うだけです。

下記では、Rubyを前提に手順を書きましたが、考え方はJava版などでも同じはずです。

手順1.ローカル環境でWebアプリを作成する際、config.ruのバージョン指定に、作成したアプリを特定する名前を記述する。

AppEngine::Rack.configure_app(
    :application => "application-id",
    :version => "sub-application-id")

手順2.通常通りデプロイする。

手順3.次のURLでブラウザからアクセスする。「application-id」、「sub-application-id」は自分で設定した値に適宜読み替えます。

http://sub-application-id.latest.application-id.appspot.com/

以上です。

ただし、下記の制約もあります。(他にもあるかもしれません。)

  • GAEのCron機能を使えるWebアプリは、デフォルトバージョンに設定されたWebアプリのみの。つまり、Cron機能を使えるWebアプリは最大10個のまま。
  • 次のURL形式で呼び出せるのはデフォルトバージョンのWebアプリのみ。

※デフォルトバージョンのWebアプリをどのバージョンにするかは、管理画面から設定できます。