谷歌应用引擎或亚马逊网络服务[关闭]

Posted

技术标签:

【中文标题】谷歌应用引擎或亚马逊网络服务[关闭]【英文标题】:Google app engine or amazon web services [closed] 【发布时间】:2013-03-14 00:19:39 【问题描述】:

我是我们云托管的新手。我想知道从 Google 应用引擎或 Amazon Web 服务入手哪个更好。

我的问题是:

    我的应用是基于java的,数据库是mysql。他们支持吗? 他们俩都有哪些免费优惠,哪一个更好? 从一个平台迁移到另一个平台有多容易? 因为我是新手,所以任何好的链接都可以开始使用这些服务。

此外,由于我是这里的新手,我希望有一些很好的链接可以帮助我开始使用这些服务,并且可以从高层次上了解它的工作原理。

【问题讨论】:

@TakashiMatsuo 有趣的是,你说这样的帖子没有建设性,我经常发现你关闭的帖子是最有建设性的,人们希望回答这样的问题。只看意见13506 我希望在这个问题上得到 SO 社区的集体建议。这肯定与编码有关。我想知道如何在网络上最好地部署我的代码。我想我会把我的询问带到网络的更远角落——不幸的是。 他们喜欢关闭所有最有趣的问题。“你的问题必须有一个二元答案!” 是的,这绝对是一个好问题。我不认为它没有建设性,因为我们中的许多人都在乞求对类似问题的良好回答。我建议 SO 通过用户投票或 SO 社区的集体建议来结束。不是某些看法。 【参考方案1】:

更新:答案不再是最新的。由于 Google 的 Cloud SQL 不再处于 BETA 阶段,这意味着 AWS 和 GAE 都支持使用 MySQL 数据库编写的 Java 应用程序,并且迁移不再那么困难。总体思路是,两家云提供商都倾向于提供“一切”:谷歌推出了Compute Engine,而亚马逊正在开发Beanstalk。然而,亚马逊的 IaaS 服务比谷歌更成熟,而谷歌的 PaaS 服务比亚马逊更成熟。这一切都归结为您想要 IaaS 还是 PaaS。


AWS 和 Google App Engine 之间有一个关键区别:AWS 是基础设施即服务 (IaaS),而 GAE 是平台即服务 (PaaS)。这意味着使用 AWS,您仍然需要管理自己的服务器(ec2 实例、db 实例、负载均衡器等)=> 需要一些系统管理员工作。使用 GAE,您只需编写应用程序并将其部署到谷歌云,而无需关心它在哪些服务器或运行多少台服务器。 Google 会为您完成所有系统管理员的工作。

两者都使用按使用付费的模式。

每个问题的答案:

    受 AWS 支持。对于GAE,您需要使用自己的数据存储(称为大表)。您可以使用 JPA 访问大表数据,但有很多限制(例如,您不能进行表连接)。 GAE 有 support for relational databases,但它似乎处于测试阶段。 他们都有一些免费计划:AWS, GAE 很难。正如我在第 1 点所说,gae 使用专有的 NoSql 数据存储。如果您想切换到关系模型,则需要重新设计模型。 阅读他们的教程:AWS、GAE。

注意:AWS 还通过 elastic beanstalk 支持 PaaS,但这仍处于测试阶段

【讨论】:

A1 不正确,因为 App Engine 也支持 mysql。见:developers.google.com/appengine/docs/java/cloud-sql/… @Takashi 谢谢。我不知道这个新功能。编辑了我的答案以反映您的评论。 +1 表示 Google 的 PaaS 和 Amazon 的 IaaS 之间的差异,在我看来是它们之间的关键差异之一。 您可以考虑添加定价。谷歌处于追赶模式,因此它的定价通常更好(他们声称,高达 40%)。这可能取决于实际用例。 Amazon AWS Price calulator 与 Google Cloud Price Calculator

以上是关于谷歌应用引擎或亚马逊网络服务[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

谷歌应用引擎 - 权限被拒绝错误

谷歌眼镜亚马逊音箱,5G时代隐私或将面临更大颠覆

如何停止或禁用 Google App Engine 生产服务器?

谷歌应用引擎上的真实项目

谷歌浏览器怎么会有那么多进程?

系统设计指南设计搜索引擎自动补全