Which web development framework works best with Google App Engine? [closed]

女生的网名这么多〃 提交于 2019-12-23 07:28:39

问题


Now that Google allows Java on App Engine, I'm wondering what effect this has on a choice of web framework for App Engine.

  1. I realize Google provides the webapp framework which is pretty barebones.
  2. And the .96 version of django that's available for App Engine is restrictive.
  3. web2py burns up resources, from what I've heard.
  4. Rails (now available) can't use ActiveRecord, ActiveResource, restclient, rmagick.

Is there something I'm missing - do any frameworks work well on App Engine?


回答1:


Personally, I have found Python to be more fun. That's just me. However there are several commited Java developers out there that will appreciate the Java support in GAE. Furthermore, supporting Java was a good choice by Google since it will allow the GAE platform to potentially host many other languages. It's obviously a little early to expect all JVM based languages to run on GAE, but the future looks promising. For now we can look at what is and isn't working by taking a look at this GAE Java Group Page.

Coming back to Python, I think small web applications will work great with the built-in webapp framework. Other applications will benefit more from Django 1.0. Have a look at the GAE articles under the frameworks section for a few good reads on this. In any case, you will undoubtedly have restrictions in any of your choices since most web frameworks are designed with relational databases in mind ... which datastore/bigtable is not. Furthermore, the GAE platform has to be sandboxed for security reasons which also restrict you to some extent. Hope this helps.




回答2:


Actually web2py is very light and since ~1.50 on GAE, it caches all bytecode compiled models/views/controllers.

Nevertheless you need to consider that by default is has datastore based sessions and this may add some overhead when compared with framework that do not have sessions working on GAE (at least not by default).

The web2py DAL itself does not add a significant overhead when compared to the naive Google datastore APIs.




回答3:


Try Spring. It supports JPA and JDO.

There's even a Python version for Spring now.




回答4:


I don't know exactly the full range of options, but I can tell you a couple of things off the bat...

  • Google Apps is built on top of / using Django.
  • Django is pretty much what Google Apps cheer and support, so I'd expect it to integrate with Google Apps better than others.
  • Google Apps has restrictions built into it that you cannot circumvent (or shouldn't). These limitations are not related to any particular framework, rather they are built into the fabric of Apps, so to speak.
  • I wouldn't worry much about performance of the framework - try to improve your design/structure, it will certainly payback better.
  • Google will eventually move to Django 1.0 and newer, plus they are updating Google Apps too.
  • They do use memcache (or an equivalent) so take that into consideration and utilize it.



回答5:


It really depends on what you want to do. In my experience something small hand made on top of Webob is really good for an API. But for full fledged sites that need templates/sessions/complex routing/caching django is hard to beat.

Take into account that if you huge frameworks (like django 1.0) the first request always takes around 3 seconds to load everything in memory and keeps it there until 15 secs after that request.

And while you shop around for frameworks take into account that:

  • ORM's don't apply to the platform so basically don't matter.
  • Fast templates (like Cheetah) won't be fast (or even work) as they can't use c extensions.
  • Caching might be the most important thing to make everything fast.



回答6:


If you are looking for Python, then Django would be your best bet.




回答7:


Struts 2 is purported to work on Google App Engine (at least in terms of the example applications). Follow this thread:

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

It appears that there are some issues with Sitemesh in terms of templating, but if you're using JSP you should be ok.

It's a good choice as a web application framework goes.




回答8:


I recommend web.py if you're using Python.




回答9:


I use new framework GAE framework. This is similar with Django, but work on AppEngine.

Best regards!




回答10:


For Python use webapp2 (comes bundled with app engine)




回答11:


If you want to build large scale application and need more flexible framework, then you can take a look at Pyramid Python Framework. Previously it is called as Pylons. There are lot of good companies using this framework.



来源:https://stackoverflow.com/questions/740566/which-web-development-framework-works-best-with-google-app-engine

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!