如果我使用Java在GAE上开发我的Web应用程序,将来我会有轻松的迁移机会,还是会坚持使用GAE?

Google App Engine + Java的其他选择是什么?

不是:

有帮助吗?

解决方案

GAE,您几乎在Google托管的容器内开发 - 针对受限的Java和其他API。这是PAAS-平台作为云计算的服务方法。这将类似于Salesforce,Facebook等方法。

但是,为了最大程度的灵活性,您应该将IAAS-基础架构视为服务云平台(例如Amazon/Rackspace/等),其中您具有最大的灵活性。

目前,我们同时使用Rackspace和Amazon,并将机器作为弹性容器,我们可以部署所需的任何东西(自定义Ubuntu Image等。)

其他提示

有了一些小心,您可以编写一个Java应用程序,以便它在应用程序引擎上都可以使用。但是,一个更好的选择是使用 AppScale 如果您选择离开应用引擎。 AppScale在您自己的硬件上提供了应用程序引擎兼容的环境。

目前,GAE最可行的竞争对手是Windows Azure。您可以轻松地在Azure中构建网站/应用程序,而无需依赖Azure框架。您必须处理的Azure API(主要用于诊断)。如果您决定使用其他Azure服务(例如表存储服务),您将需要真正擅长将自己从表存储中抽象出来,以使您的代码便携式。处理SQL Azure(至少从利用率的角度来看)与使用SQL Server无关,您需要从实际的RDBMS实现中进行简单的抽象(大多数数据访问库无论如何都可以做到这一点),以便以后使用MySQL或Oracle或Oracle等。

您可能会粘在GAE上(或一个非常相似的平台,您可以自己复制)。

替代方案:亚马逊EC2? Windows Azure?

使用GAE需要您在其系统周围设计该应用程序,以便迁移可能需要重写。当然,他们的NOSQL DB至少。有些人说亚马逊EC2是一个更好的选择,但我还没有尝试过。我也更喜欢基于python的东西,例如django,而不是爪哇东西。也可以尝试睡衣客户端工具包。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top