0

我正计划编写一个软件(用java),它(希望)会被大量使用。一开始我可能会在自己的服务器上运行它,但如果它变得流行,我的服务器很可能会崩溃。

所以我的计划是为 Amazon EC2、Google App Engine、Lunacloud 等云服务编程。

该应用程序暂时没有 gui。它将专注于 SOAP 或 JMS(或类似的东西),并且应该将大量数据存储在关系数据库中(PostgreSQL 会很好)。

由于我是云服务的新手,所以我尝试了一点 GAE。主要用途很简单,但一旦我使用 JPA 和 ManyToMany-Relations,GAE 就很糟糕。在 GAE 中制作 SOAP 或 JMS 服务器也不简单。

由于我因尝试 GAE 而失去了周末,我认为向社区询问是个好主意。

哪种云服务最适合我的要求?这些服务有什么好处和区别?你还能推荐什么?

4

2 回答 2

1

这个问题太广泛了,无法提供一个好的答案,但这里有一些提示应该会有所帮助。

平台即服务(GAE、Jelastic、Heroku)和基础设施即服务(EC2)之间存在差异。

在平台即服务类别中,您拥有更多的自动化基础架构,而底层组件的可见性通常很少。从开发人员的角度来看,这可以使事情变得更容易,但也有其缺点。您经常被供应商的工作方式所束缚,并且可能难以切换。您可能还对您的应用程序可以做什么有限制。

在基础架构即服务类别中,您可以访问可以自行配置和自动化的虚拟机。您在此类平台上拥有更大的灵活性,但通常希望您自己处理更多的工作。EC2 确实有自己的平台版本,即具有弹性 beantalk 的服务。

于 2013-07-14T22:38:00.470 回答
0

我也推荐heroku,因为它没有流量限制,你可以免费运行一个基本实例。如果您不需要 nosql dbs 和额外的软件,它将非常便宜,并且无限流量对您的 Web 服务有好处。Gae 有自己的文件结构,所以我可以很好地理解您的数据库结构的问题。heroku 和 ec2 不会限制您的计划,但如果您不打算经常扩大和缩小规模,那么 ec2 通常会很昂贵。当您想要添加额外的软件并扩大规模时,heroku 也会变得非常昂贵。如果您想使用 jelastic,我不知道您是否能够像使用 ec2 一样进行扩展。

另一种但复杂的方法是租用一些具有无限流量的普通根服务器,其中一个实例充当负载均衡器,但您必须自己进行配置

于 2013-07-14T22:47:48.703 回答