我想创建一个高流量的聊天网站,可能会在服务器上进行一些图像处理的视频流。
通过 Channel API (http://code.google.com/appengine/docs/python/channel/overview.html) 扫描让我希望这可以在没有 AJAX 轮询的情况下完成,一般认为 GAE非常可扩展。
我还有一些顾虑:
1) 能否同时支持数以万计的用户实时交互而不卡顿? CPU 使用率是否有上限?
2) 我将(可能)在 J2EE 框架之上编写它。 GAE 是否保证每个新请求都可以访问全局内存中数据存储,只要应用程序在服务器上运行(Java 语言中的“ServletContext”)就可用,并且可能存储千兆字节的数据?有内存上限吗?
3) 完整的 J2SE 和 J2EE 堆栈是否可用?我可以只包含我想要的任何库吗?
4) 对于此类问题,是否有比 GAE 更好的解决方案?我一直在考虑租用几台专用服务器,但这将达到数千/月......
提前致谢!
最佳答案
按顺序回答您的问题:
- 是的,它可以同时支持数以万计的用户。不过,我希望您不要期望所有这些都同时相互交互 - 将每个用户事件展开 10,000 次更新并不是很实际。 CPU 是计费配额,因此没有上限,只要您为使用付费。
- App Engine 数据存储在磁盘上,而不是在内存中。应用程序可以访问数据存储(持久的)和内存缓存(在内存中,但缓存)。两者在整个应用程序中都是全局的,而不仅仅是实例。与 CPU 配额一样,没有固定上限 - 一分钱一分货。
- 有一个核心 JRE 类的白名单,其中排除了一些对沙盒不安全的功能。除此之外,您可以运行任何您想要的。
- 我认为 App Engine 非常适合您的应用程序,但视频流除外:目前没有任何基于 App Engine 的解决方案,因此您必须为其使用外部服务。 App Engine 的一个主要优点是成本随着使用量的增加而增加,因此您只需为使用的部分付费。
关于google-app-engine - Google Application Engine 是高流量聊天网站的良好平台吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5467907/