我最近不得不在Google AppEngine上实现一个项目。一开始我很怀疑。但Appengine有一些非常好的方法:
但如果我正在考虑专业项目,有一些我不喜欢的事情
你知道AppEngine有哪些类似的替代方案吗?我不是指像EC2这样的服务。
答案 0 :(得分:32)
您可以查看AppScale
它是AppEngine的开源实现,您可以在自己的计算机上部署,并提供大量数据库供您选择。
答案 1 :(得分:16)
我认为Heroku是一个很好的选择。
它可以运行大多数GAE现有应用程序,因为它支持django,但也包括:
真的,这是一个不错的选择。
如果您希望您的应用程序没有绑定到GAE,最好的方法是使用众所周知的语言和众所周知的持久性提供程序。例如,Ruby + PostgreSQL可以是非常便携的组合。 Django也是,但没有BigTable ......
答案 2 :(得分:15)
AppScale和TyphoonAE都是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
虽然文档有点稀疏