问题描述
考虑到我已经有一个很好的代码工作,我想保留GAE有什么替代品。换句话说,我在挖python。但是,我的用例更多的请求数量较少,CPU使用类型使用情况较高,我担心我可能无法继续使用App Engine永远。我听说过很多人谈论Amazon Web Services和其他种类的云提供商,但我很难看到大多数其他产品提供的服务范围(数据查询,用户身份验证,自动缩放),应用程序引擎提供。我在这里的选择是什么?
What alternatives are there to GAE, given that I already have a good bit of code working that I would like to keep. In other words, I'm digging python. However, my use case is more of a low number of requests, higher CPU usage type use case, and I'm worried that I may not be able to stay with App Engine forever. I have heard a lot of people talking about Amazon Web Services and other sorts of cloud providers, but I am having a hard time seeing where most of these other offerings provide the range of services (data querying, user authentication, automatic scaling) that App Engine provides. What are my options here?
推荐答案
我不认为有另一个替代现在因为GAE是在自己的类。当然GAE是云计算,但我认为GAE是云计算的一个子集。亚马逊的EC2也是云计算(以及Joyent加速器,Slicehost Slices),但显然他们是两个不同的野兽。所以现在你处在一种需要根据你的需要重新思考你的架构的情况。
I don't think there is another alternative (with regards to code portability) to GAE right now since GAE is in a class of its own. Sure GAE is cloud computing, but I see GAE as a subset of cloud computing. Amazon's EC2 is also cloud computing (as well as Joyent Accelerators, Slicehost Slices), but obviously they are two different beasts as well. So right now you're in a situation that requires rethinking your architecture depending on your needs.
GAE的直接好处是它基本上免维护,因为它涉及基础设施(可扩展的Web服务器和数据库管理)。 GAE更适合那些只想专注于他们的应用程序而不是底层系统的开发者。在某种程度上,你可以认为开发者友好。现在,还应该说,这些其他云计算解决方案还试图允许您只通过提供VM映像/模板来满足您的应用程序。最终你的需求将决定你应该采取的方法。
The immediate benefits of GAE is that its essentially maintenance free as it relates to infrastructure (scalable web server and database administration). GAE is more tailored to those developers that only want to focus on their applications and not the underlying system.In a way you can consider that developer friendly. Now it should also be said that these other cloud computing solutions also try to allow you to only worry about your application as much as you like by providing VM images/templates. Ultimately your needs will dictate the approach you should take.
现在考虑到这一切,我们也可以构建混合解决方案和解决方案,以满足我们的需求。例如,GAE似乎不直接适用于您描述的特定应用程式。 换句话说,GAE提供的请求数量相对较多,cpu周期数较少(不确定付费版本是否会有所不同)。
Now with all this in mind we can also construct hybrid solutions and workarounds that might fulfill our needs as well. For example, GAE doesn't seem directly suited to this specific app needs you describe. In other words, GAE offers relatively high number of requests, low number of cpu cycles (not sure if paid version will be any different).
但是,一种解决方法这个挑战是通过构建一个定制的解决方案,涉及作为前端的GAE和作为后端的Amazon AWS(EC2,S3和SQS)。有人会说你可能会在AWS上构建整个堆栈,但这可能涉及重写大量现有代码。此外,作为解决方法,先前的描述了在GAE中模拟后台任务的方法。此外,您还可以查看以分发工作负载。
However, one way to tackle this challenge is by building a customized solution involving GAE as the front end and Amazon AWS (EC2, S3, and SQS) as the backend. Some will say you might as well build your entire stack on AWS, but that may involve rewriting lots of existing code as well. Furthermore, as a workaround a previous stackoverflow post describes a method of simulating background tasks in GAE. Furthermore, you can look into HTTP Map/Reduce to distribute workload as well.
这篇关于Google App Engine有哪些替代方案?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!