目前我们的应用程序正在Google App Engine上运行,我们希望迁移到亚马逊。 我们主要考虑成本优化(因为我们认为应用程序引擎非常昂贵),因此我们决定采取这一步骤。 其次,App Engine存在限制,我们只能使用有限的资源。
当我们下定决心搬到亚马逊时,我需要一些技术帮助。
appengine数据存储区有什么好的选择吗?我们计划使用Dynamodb,但它有64KB实体大小的限制。我们的数据存储区实体的大小更大(超过1 MB,我们将它们存储为分片)。我们正在考虑使用S3。 Dynamodb + S3好不好?
任务队列的替代方案?有时我们需要安排任务在30天后运行。
我们正在使用long(非String)自动生成的ID。所以任何好的服务都能保证分布式系统中的唯一ID。
由于我们的应用程序很大(超过500万用户和大量活跃用户),我们不希望停机。迁移应该无缝地进行,而不会让我们的用户意识到它。我们正在考虑在用户登录时进行迁移,但除此之外,任何想法/方法都将是一个很大的帮助。
即使我们想知道在迁移过程中如何管理现有的实体ID。
由于
答案 0 :(得分:1)
查看Google App Engine的开源版本:http://www.appscale.com/& https://github.com/AppScale/appscale/wiki
答案 1 :(得分:0)
如果要最小化重新编码,可以查看http://www.jboss.org/capedwarf,它支持JBoss Application Server顶部的大量App Engine API。我自己没有使用它,但我们已经在兼容性测试套件上使用过它们。