0

Google App Engineアプリを小さなバージョン(通常使用されるビット-ユーザーインターフェイスなど)と大きなバージョン(すべての小さなバージョンと管理画面、cronワーカーなど)に分けました。

計画では、メモリ要件が小さいため、GAEは私の小さなバージョンを非常に迅速にロードし、各インスタンスからの多くのリクエストを処理できるはずです。大きなバージョンは管理画面とcron作業用にロードされ、Guice、テンプレートライブラリ、apache-commonsなどが必要です。

問題は、ユーザーが[管理者]タブをクリックすると、自動的に大きなバージョンに転送される必要があることです。このリンクを生成するにはどうすればよいですか?私は自分のアプリケーションを次のようにバージョン管理したいと思っていました。

small-1.myapp.appspot.com

big-1.myapp.appspot.com

small-2.myapp.appspot.com

big-2.myapp.appspot.com

など、およびユーザーがスモールコードで使用できないページを要求したときにsmall-1からbig-1にリダイレクトされるようにします。

SystemProperty.applicationVersionを使用してみましたが、アプリケーションのバージョン文字列が含まれていないようです。

4

2 に答える 2

2

よろしいですか

com.google.appengine.api.utils.SystemProperty.applicationId.get()

myappアプリケーションのID(あなたの場合)を生成しない、または

com.google.appengine.api.utils.SystemProperty.applicationVersion.get()

実行中のアプリケーションのメジャーバージョン(例:)を生成しませんsmall-1 [timestamp](タイムスタンプを削除する必要があります)?

それができない場合は、アプリIDとバージョン番号を既に知っているので、で新しいシステムプロパティを宣言し、appengine-web.xml代わりにこれらの値を使用できませんか?

上記にもかかわらず、よりクリーンな代替手段を検討することをお勧めします。アプリを1つだけにして(GAEへの維持とアップロードの作業が大幅に少なくなります)、管理者部分の遅延初期化を実行するか、私が行うことを実行して初期化をアプリの起動時にキューに入れられたタスク。

于 2012-05-30T13:29:34.143 に答える
-1

異なるバージョンを使用および維持する場合は、トラフィック分割を使用できます:https ://developers.google.com/appengine/docs/adminconsole/trafficsplitting

于 2012-05-30T16:57:00.207 に答える