= GAE(Google App Engine) = == GAEの問題点 == === 未サポートのJava-API === 使用できないjava apiが多い。例えば、java.awt以下が使えないため、これに依存しているbatikは全く動作しない。 そのほか、JasperReportsが動作しないなど、イメージ関連のJava-APIに依存しているライブラリは軒並み使用不能のようである。 つまり、サーバサイドで何らかの画像処理やレポート作成を行わせるのはほとんど不可能とみてよい。 ただし、[[http://www.tinyline.com/]]のようなGAEで動作することをウリにしているライブラリも存在する。 === スピンアップ === 誰も使用していない状態が続くと、アプリケーションが「スピンダウン」という状態になり、次の使用時には「スピンアップ」という処理が必要になる。 これは自動的に行われるのが、少々時間がかかる。 === Fromアドレスの制限 === メール送信時のFromアドレスとしては任意のものが使用できない。 あらかじめGAEに登録したものしかだめ。 === ヒープの制限 === 最大で100MB程度らしい。 === レスポンスタイム === 30秒以内(緩和されているという話もあるが、未確認)にレスポンスを返さなければならない。 ユーザ向けの機能としては当然なのだが、何らかのシステムバッチ処理を行うのには不便。 === ダウンロード可能なデータ量 === 1MB程度の制限ということだが、実際にはそれほど大きなデータはダウンロードできない。 少なくともGWTPのアクションハンドラを使用すると、300KB強程度しかダウンロードすることができない。 しかもダウンロードが途中で打ち切られても何のログも残されず、手元には壊れたファイルだけが残ることになる。 === 参考 === * [[http://code.google.com/p/googleappengine/issues/detail?id=1423]] == Eclipseプロジェクトの作成 == 以下はEclipseでGWTプラグインを使用する前提。 === GAE対応でないGWTアプリをGAE対応にする === プロジェクトプロパティのGoogle/App Engineを開いて、「Use Google App Engine」をチェックする。 この時点で、war/WEB-INF/appengine-web.xmlというファイルが作成される。 * App Engine SDKを選択する。この場で構成することもできる。 * Deploymentを指定する。My Applicationのクリックで登録済のアプリケーション一覧が表示されるので、いずれかのID(一覧では「Application」列)を入力する。 続く。。。 == サードパーティ == * [[GAE/Objectify|Objectify]] == 参考 == * [[http://blog.madoro.org/mn/90|Google App Engine / Python 上での開発で最初から知ってればよかった、ってことをいくつか]]