10

Google が App Engine で Java を許可した今、これが App Engine の Web フレームワークの選択にどのような影響を与えるのか疑問に思っています。

  1. 私は、Google が提供する webapp フレームワークはかなり必要最低限​​のものであることを認識しています。
  2. また、App Engine で使用できる .96 バージョンの django には制限があります。
  3. 私が聞いたところによると、web2py はリソースを消費します。
  4. Rails (現在利用可能) は、ActiveRecord、ActiveResource、restclient、rmagick を使用できません。

何か足りないものはありますか? App Engine でうまく動作するフレームワークはありますか?

4

11 に答える 11

8

実際、web2py は非常に軽量で、GAE で ~1.50 以降、バイトコードでコンパイルされたすべてのモデル/ビュー/コントローラーをキャッシュします。

それにもかかわらず、デフォルトで にはデータストア ベースのセッションがあり、GAE で動作するセッションを持たないフレームワークと比較すると、オーバーヘッドが追加される可能性があることを考慮する必要があります (少なくともデフォルトでは)。

単純な Google データストア API と比較すると、web2py DAL 自体は大きなオーバーヘッドを追加しません。

于 2009-04-11T19:54:03.810 に答える
5

個人的には、Pythonの方が楽しいと思いました。それは私だけです。ただし、GAEでのJavaサポートを高く評価するコミットされたJava開発者が何人かいます。さらに、Javaをサポートすることは、GAEプラットフォームが他の多くの言語をホストできる可能性があるため、Googleにとって良い選択でした。すべてのJVMベースの言語がGAEで実行されることを期待するのは明らかに少し早いですが、将来は有望に見えます。今のところ、このGAE Javaグループページを見ると、何が機能していて何が機能していないかを確認できます。

Pythonに戻ると、小さなWebアプリケーションは組み込みのWebアプリケーションフレームワークでうまく機能すると思います。他のアプリケーションは、Django1.0からより多くの恩恵を受けるでしょう。フレームワークセクションの下にあるGAEの記事を見て、これに関するいくつかの良い読み物を見つけてください。いずれにせよ、ほとんどのWebフレームワークはリレーショナルデータベースを念頭に置いて設計されているため、間違いなく選択に制限があります...データストア/bigtableはそうではありません。さらに、GAEプラットフォームは、セキュリティ上の理由からサンドボックス化する必要があります。これにより、ある程度の制限もあります。お役に立てれば。

于 2009-04-11T18:35:00.147 に答える
3

を試してみてください。JPA と JDO をサポートしています。

現在、Spring 用のPython バージョンもあります。

于 2009-04-11T18:20:15.750 に答える
1

オプションの全範囲を正確に知ることはできませんが、すぐにいくつかのことをお話しすることができます...

  • Google Appsは、Djangoの上に/Djangoを使用して構築されています。
  • Djangoは、Google Appsが応援し、サポートしているものとほぼ同じなので、他のアプリよりもGoogleAppsとの統合が優れていると思います。
  • Google Appsには、回避できない(または回避すべきではない)制限が組み込まれています。これらの制限は特定のフレームワークとは関係がなく、いわばアプリのファブリックに組み込まれています。
  • フレームワークのパフォーマンスについてはあまり心配しません。設計/構造を改善してみてください。確かに、より良い見返りが得られます。
  • Googleは最終的にDjango1.0以降に移行し、さらにGoogleアプリも更新します。
  • 彼らはmemcache(または同等のもの)を使用しているので、それを考慮に入れて利用してください。
于 2009-04-11T18:35:42.250 に答える
1

それは本当にあなたが何をしたいかによって異なります。私の経験では、Webob の上に手作りされた小さなものは、API に非常に適しています。しかし、テンプレート/セッション/複雑なルーティング/キャッシングを必要とする本格的なサイトでは、django に勝るものはありません。

巨大なフレームワーク (django 1.0 など) の場合、最初のリクエストはすべてをメモリにロードするのに常に約 3 秒かかり、そのリクエストの 15 秒後までそこに保持されることを考慮してください。

また、フレームワークを探し回る際には、次のことを考慮してください。

  • ORM はプラットフォームには適用されないため、基本的には問題になりません。
  • 高速なテンプレート (Cheetah など) は、c 拡張機能を使用できないため、高速ではありません (または動作しません)。
  • キャッシングは、すべてを高速化するために最も重要なことかもしれません。
于 2009-04-11T19:09:49.627 に答える
0

Pythonを使用している場合は、web.pyをお勧めします。

于 2009-04-11T18:53:00.337 に答える
0

大規模なアプリケーションを構築し、より柔軟なフレームワークが必要な場合は、Pyramid Python Frameworkをご覧ください。以前はパイロンと呼ばれていました。このフレームワークを使用している優れた企業はたくさんあります。

于 2014-02-07T11:27:57.257 に答える
0

新しいフレームワーク GAE フレームワークを使用します。これは Django と似ていますが、AppEngine で動作します。

よろしくお願いします!

于 2010-03-03T20:44:48.540 に答える
0

Python をお探しの場合は、Djangoが最適です。

于 2009-04-11T18:25:54.193 に答える
0

Struts 2 は、(少なくともサンプル アプリケーションに関しては) Google App Engine で動作するとされています。このスレッドに従ってください:

http://www.nabble.com/Google-App-Engine-support--td22972179.html

テンプレートに関して Sitemesh に問題があるようですが、JSP を使用している場合は問題ありません。

これは、Web アプリケーション フレームワークとしては良い選択です。

于 2009-04-11T18:32:48.170 に答える
0

Python の場合、webapp2を使用します(アプリ エンジンにバンドルされています) 。

于 2013-08-16T11:50:34.713 に答える