Google AppEngine的替代品?

时间:2010-08-09 23:20:03

标签: google-app-engine

我最近不得不在Google AppEngine上实现一个项目。一开始我很怀疑。但Appengine有一些非常好的方法:

  • 没有服务器设置。一切都开箱即用。 Gzip,图书馆等
  • 一点击部署。在Mac上启动GAE启动器,然后单击“部署”。完成。
  • 低成本
  • 易于生产记录

但如果我正在考虑专业项目,有一些我不喜欢的事情

  • blobstore。这只是......很奇怪。和不可备份的
  • 所有1 MB限制
  • 感觉您的代码只能在AppEngine上运行。 (BigTable的)

你知道AppEngine有哪些类似的替代方案吗?我不是指像EC2这样的服务。

5 个答案:

答案 0 :(得分:32)

您可以查看AppScale

它是AppEngine的开源实现,您可以在自己的计算机上部署,并提供大量数据库供您选择。

答案 1 :(得分:16)

我认为Heroku是一个很好的选择。

它可以运行大多数GAE现有应用程序,因为它支持django,但也包括:

  • 它支持Ruby(w或w / o Rails),Java(w或w / o Spring),Node.js,Clojure,......
  • 它具有强大的CLI支持(用于发布,创建应用程序,缩放,日志,ps等的git push)。
  • 它支持MySql和PostgreSQL(等等,MongoDB,Amazon RDS等)
  • 每个应用程序每月有750个小时的免费等级(约1台机器总是向上)。
  • 它有一系列插件,用于提供云服务作为应用程序的资源
  • 它有一个附加程序来开发自己的附加组件。

真的,这是一个不错的选择。

如果您希望您的应用程序没有绑定到GAE,最好的方法是使用众所周知的语言和众所周知的持久性提供程序。例如,Ruby + PostgreSQL可以是非常便携的组合。 Django也是,但没有BigTable ......

答案 2 :(得分:15)

AppScaleTyphoonAE都是App Engine平台的第三方实现。 TyphoonAE的目标是中小规模,而AppScale则针对大规模的目标。

就备份blobstore而言,这是非常可行的:只需使用内置的处理程序来提供blob,并且与remote_api一起使用,你可以很好地下载你的blob。

答案 3 :(得分:6)

我几乎不想在谷歌相关问题中提及微软,但我完全与供应商无关。因此,我将提供Microsoft的Azure作为一个与AppEngine有许多相似之处的平台,但有足够的差异,它可能适合您的问题。

Azure和AppEngine的相似之处在于它们都旨在让您构建易于扩展的应用程序。 Azure为您提供Microsoft的标准Web工具包选项:C#,VB.NET,ASP.NET ASP.NET MVC,还提供PHP。它有一个NoSQL文档数据库,如AppEngine,但也可以选择更标准的SQL Server实例。虽然我自己没有使用它,但看起来AppEngine for Business现在也提供SQL。

Azure为您提供了一种长时间运行后台进程的方法。 AppEngine并不是我所知道的。

从我的角度来看,AppEngine具有巨大的优势,只有在实际处理请求时才向您收取费用。 Azure实例会使您即使在完全空闲的时间内也会收到帐单。这是完全典型的,但事实上谷歌并没有这样,这让我每次都选择AppEngine。我的预算太紧了,不能让我花钱去闲置CPU时间。

答案 4 :(得分:1)

对于非关系型数据库,有一个django端口可以与app引擎或mongodb一起使用。

google for django non-rel

虽然文档有点稀疏