[英]Using web.py on Appengine
我正在寻找一个简单的python web框架,它既可以作为独立运行,也可以运行在Appengine上。
我想以这样的方式编写应用程序,以便我可以根据部署配置在独立和Appengine之间切换。 Standalone将使用RDBMS。
当我检查web.py看起来简单而有前途。 我有以下问题:
web.py在Appengine上运行良好吗?
是的它确实很好用,它结构紧凑,使用方便。
有没有重大的已知陷阱?
Web.py不提供与GAE兼容的任何数据抽象层; 这意味着,为了从RDBMS切换到NoSQL数据库,您必须自己创建web.db数据库API和Google App Engine数据存储API之上的层。
你能分享一下在Appengine上使用web.py的经历吗?
我已经在GAE和其他几个以Sqlite作为数据库的宠物项目的基础上部署了几个简单的web.py应用程序; 这是一个迷你评论。
任何有关实现上述目标的建议都表示赞赏。
如果从Appengine到RDBMS的切换是您最关心的问题,请查看web2py 。
虽然有一些限制 ,但据我所知,只有一个Python Web框架GAE友好,它提供了比App Engine数据存储和其他几个RDBMS解决方案更高的DAL。
从一个db切换到另一个db只需要使用正确的连接字符串初始化DAL:
db = DAL('sqlite://storage.db')
db = DAL('mysql://username:password@localhost/test')
db = DAL('gae')
考虑使用webapp2 。 它类似于web.py,提供基本相同的功能集,并在App Engine外部运行。 此外,您可以获得与App Engine SDK和库的完美兼容性(我在这里更好地解释)。
您只需要添加关系数据库库。 但这是一个简单的选择: SQLAlqchemy几乎是Python领域的标准,拥有大量文档和繁荣的社区。
我也建议使用web2py 。 优秀的框架,优秀的社区,在AppEngine之外开箱即用。 它还支持许多数据库(SQLite,PostgreSQL,MySQL,MSSQL,FireBird,Oracle,IBM DB2,Informix,Ingres和Google App Engine)。
最重要的是,在Linux,Windows,Mac上安装它是微不足道的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.