有关使用Google App Engine的反馈?

问题:

期待做一个非常小,快速的肮脏的一面项目。我喜欢Google App Engine正在使用Django内置的Python进行运行 – 给我一个借口来尝试这个平台,但是我的问题是这样的:
有没有人使用应用引擎进行除玩具问题之外的任何事情?我看到一些很好的示例应用程序,所以我认为这对于真正的交易是足够好的,但想获得一些反馈。
任何其他成功/失败的笔记将是巨大的。

回答:

我为我的小地震手表应用程序尝试了应用程序引擎
 http://quakewatch.appspot.com/
我的目的是看到应用引擎的功能,所以这里是要点:

  1. 它不会默认与django,它有自己的Web框架是pythonic有URL调度程序像django和它使用django模板
    所以如果你有django exp。你会发现它很容易使用

     

  2. 您不能在服务器上执行任何长时间运行的进程,您所做的是回复请求,哪些应该是快速的,否则appengine会杀死它
    所以如果你的应用需要很多后端处理appengine并不是最好的方法
    否则你将不得不在自己的服务器上进行处理
  3. 我的quakewatch应用程序有一个订阅功能,这意味着我不得不发送最新的地震发生,但我无法运行应用程序引擎的后台进程来监视新的地震
    解决方案是使用第三方服务,如pingablity.com,可以连接到您的一个页面,并执行订阅电子邮件
    但是在这里,你也不得不小心,你不要花太多时间在这里
    或将任务分解成几件
  4. 它提供了像Django一样的建模功能,但是后端是完全不同的,但对于一个新的项目来说,这并不重要。

但总的来说,我认为创建不需要大量后台处理的应用程序是非常好的。
编辑:
现在task queues可用于运行批处理或计划任务
编辑:
在GAE上工作/创建真实应用程序一年之后,现在我的观点是,除非您正在制作需要扩展到百万和百万用户的应用程序,否则不要使用GAE。在GAE中维护和执行微不足道的任务由于分布式性质而令人头疼,为避免最后期限超出错误,计数实体或复杂查询需要复杂代码,因此小型复杂应用程序应该遵守LAMP。
编辑:
模型应该是考虑到您以后希望拥有的所有交易而特别设计的,因为仅在同一实体组中的实体可以在交易中使用,并且使更新两个不同组的过程成为噩梦。除非他们在同一实体组,否则在交易中将钱从用户1转移到用户2是不可能的,但使其成为同一个实体组可能不是最佳的频繁更新目的….
读这个http://blog.notdot.net/2009/9/Distributed-Transactions-on-App-Engine

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Feedback on using Google App Engine?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

15 + = 23