Google app engine 谷歌AppEngine的替代方案?

Google app engine 谷歌AppEngine的替代方案?,google-app-engine,Google App Engine,我最近不得不在谷歌AppEngine上实现一个项目。一开始我持怀疑态度。但是Appengine上有一些非常好的方法: 没有服务器设置。一切都是开箱即用的。Gzip、图书馆等 一键部署。在Mac上启动GAE启动器并单击部署。完成了 低成本 易于生产测井 但如果我在考虑专业项目,有些事情我不喜欢 blobstore。只是。。。奇怪的并且不可备份 所有1MB限制 感觉你的代码只会在AppEngine上运行。(大表) 你知道阿彭金有没有类似的替代品?我指的不是像EC2这样的服务。你可以看看 它是

我最近不得不在谷歌AppEngine上实现一个项目。一开始我持怀疑态度。但是Appengine上有一些非常好的方法:

  • 没有服务器设置。一切都是开箱即用的。Gzip、图书馆等
  • 一键部署。在Mac上启动GAE启动器并单击部署。完成了
  • 低成本
  • 易于生产测井
但如果我在考虑专业项目,有些事情我不喜欢

  • blobstore。只是。。。奇怪的并且不可备份
  • 所有1MB限制
  • 感觉你的代码只会在AppEngine上运行。(大表)
你知道阿彭金有没有类似的替代品?我指的不是像EC2这样的服务。

你可以看看

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

并且都是AppEngine平台的第三方实现。台风号的目标是中小型,而AppScale的目标是大型终端


就备份blobstore而言,这是完全可行的:只需使用内置的处理程序来服务Blob,并且,结合remote_api,您可以很好地下载Blob。

我几乎不想在与谷歌相关的问题中提到微软,但我完全不知道供应商。因此,我将微软的Azure作为一个平台,它与AppEngine有很多相似之处,但也有足够的不同之处,可以很好地回答您的问题

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

Azure为您提供了一种拥有长期运行的后台进程的现成方法。据我所知,阿彭金并没有这样做


从我的角度来看,AppEngine的巨大优势在于,只有在实际处理请求时才向您收取使用费。Azure实例会导致您在完全空闲的情况下收取账单。这是非常典型的,但谷歌没有这样做的事实让我每次都选择AppEngine。我的预算太紧了,不允许我花钱在空闲的CPU时间上。

有一个django端口连接到与app engine或mongodb一起工作的非关系数据库

谷歌为django非rel

虽然文档有点稀疏,但我认为这是一个很好的选择

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

  • 它支持Ruby(带或不带Rails)、Java(带或不带Spring)、Node.js、Clojure等等
  • 它具有强大的CLI支持(git push用于发布、创建应用程序、扩展、日志、ps等)
  • 支持MySql和PostgreSQL(以及MongoDB、Amazon RDS等)
  • 对于每个应用程序,它有一个每月750小时的免费层(约1台机器一直在运行)
  • 它有一个插件集合,用于提供云服务作为应用程序的资源
  • 它有一个附加程序来开发您自己的附加程序
真的,这是一个很好的选择


如果希望应用程序不绑定到GAE,最好的方法是使用知名的LAGS和知名的持久性提供程序。例如,Ruby+PostgreSQL可以是一种非常可移植的组合。Django也是,但是没有BigTable…

blobstore到底是什么让你烦恼?正如Nick在回答中提到的那样,它是“可备份的”。我想建议根据您的范围使用parse.com或mongolab作为后端,而不是昂贵的google数据存储,然后您可以根据需要无缝扩展到mongolab()副本,这可能比公认的答案更有意义。如果我的应用程序是使用应用引擎后端用python编写的,那么Heroku支持Ruby这一事实对我来说毫无意义。它们在RED HAT ENTERPRISE LINUX 6.4和Amazon EC2中不起作用。你有什么解决办法吗?@YumYumYum“它们不起作用”非常没有帮助。为什么它们不能工作呢?在CentOS 6中,我正在安装它,它说:
获取源代码..../build_script.sh:line 23:apt get:command not found
heroku目前还不如Openshift可靠。我想建议Openshift满足您的需要。那么Docker容器呢?当一个请求被实际处理时,它们会被激发起来吗?还是太慢而不可行?我应该注意到,我帖子中的大量信息现在已经过时了,至少就AppEngine的功能而言。我真的希望我对Docker有更多的了解,但据我所知,旋转一个新的容器实例不会发生得太快,以至于它不会为web请求提供可接受的响应时间。另一方面,从扩展的角度来看,它可能是可行的,以满足需求。可以构建一个智能负载平衡器来创建新实例以满足不断增长的需求,对吗?