2012-06-21 101 views
1

我正在设计一个web应用程序(一个游戏)并计划使用C#/ .Net来实现。考虑到我想实现的可伸缩性和性能,我担心这个问题。这里是应用程序。有一个虚拟世界,由许多王国组成。战争发生在这些王国之间的霸权地位。随着游戏的进行,我想要实时显示世界的确切人口,即当人们出生的人口增加以及他们死于战争(或其他)时,它会减少。因此,我的问题归结为一个由潜在数千游戏玩家更新并显示在网页上的数字。你如何实时管理它。将数字存储在数据库中可能无法正常工作,因为它需要同时更新多次。还有哪些其他技术可以使用?这是No-SQL数据库,memcached,Hadoop的候选人吗?有什么建议么?
非常感谢。编写并发程序的好方法

+0

为什么你不模拟预期的负载,看看你的数据库是否可以处理它? – svick

回答

0

将“更新”推送到客户端可能不是一个好主意,因为这会在流量过高时堵塞网络。相反,您应该每隔一秒左右查询一次人口数量,以便将任何瓶颈移动到服务器的CPU,这通常比网络连接更快。

您可能需要某种数据库来存储人口数据,因为您需要跟踪查询之间的人口。

这种方法还可以防止客户端的数据被破坏,而不是增量/减量,数据每次都被替换。

相关问题