【发布时间】:2011-07-06 09:06:18
【问题描述】:
我正在开发一款带有 flex 和 blazeds 的回合制多人游戏。 问题是我读到 blazeds 只能处理数百个并发用户,但这可以通过使用像 jetty 7 和 servlet 3.0 这样的 nio 服务器来增加。
Tomcat 7 是否支持 nio?我想知道我是否可以通过使用 tomcat 7and blazeds 将并发用户数增加到几千。
任何线索或帮助将不胜感激。
谢谢。
【问题讨论】:
我正在开发一款带有 flex 和 blazeds 的回合制多人游戏。 问题是我读到 blazeds 只能处理数百个并发用户,但这可以通过使用像 jetty 7 和 servlet 3.0 这样的 nio 服务器来增加。
Tomcat 7 是否支持 nio?我想知道我是否可以通过使用 tomcat 7and blazeds 将并发用户数增加到几千。
任何线索或帮助将不胜感激。
谢谢。
【问题讨论】:
不要担心性能。如果您的游戏成功,您将能够负担得起更好的技术解决方案。如果没有,您是否可以处理 1000 或 1000000 个请求都没有关系。
但是,与您的问题相关 - 您可以通过执行与服务器相关的调整(如堆栈大小、增加线程池的大小)来增加并发用户的数量。
有几个实现 Servlet 3.0 (NIO) 的解决方案,但您必须编写自己的 BlazeDS NIO 端点 - 所以它不能开箱即用。
编辑:
使用 NIO Jetty 连接器可能是个好主意……但首先应该做的是构建和测试有效的性能场景。例如,如果您计划支持 10000 个连接用户并推送 1 msg/秒,您需要为此编写压力测试。之后,您可以尝试使用各种连接器/配置。
Adobe 创建的一个工具可以帮助您进行性能测试 - 它位于 here(请查看 Adobe LiveCycle Data Services 3 ES2 Performance Brief.pdf 的附件)。它包含如何配置/运行压力工具的说明。如果您无法运行它,请告诉我
举个例子,在我的机器(i7 Q820 8gb ram)上,使用压力工具我能够处理 10000 个连接的用户。
【讨论】: