2012-06-21 56 views
1

我正在設計一個web應用程序(一個遊戲)並計劃使用C#/ .Net來實現。考慮到我想實現的可伸縮性和性能,我擔心這個問題。這裏是應用程序。有一個虛擬世界,由許多王國組成。戰爭發生在這些王國之間的霸權地位。隨着遊戲的進行,我想要實時顯示世界的確切人口,即當人們出生的人口增加以及他們死於戰爭(或其他)時,它會減少。因此,我的問題歸結爲一個由潛在數千遊戲玩家更新並顯示在網頁上的數字。你如何實時管理它。將數字存儲在數據庫中可能無法正常工作,因爲它需要同時更新多次。還有哪些其他技術可以使用?這是No-SQL數據庫,memcached,Hadoop的候選人嗎?有什麼建議麼?
非常感謝。編寫併發程序的好方法

+0

爲什麼你不模擬預期的負載,看看你的數據庫是否可以處理它? – svick

回答

0

將「更新」推送到客戶端可能不是一個好主意,因爲這會在流量過高時堵塞網絡。相反,您應該每隔一秒左右查詢一次人口數量,以便將任何瓶頸移動到服務器的CPU,這通常比網絡連接更快。

您可能需要某種數據庫來存儲人口數據,因爲您需要跟蹤查詢之間的人口。

這種方法還可以防止客戶端的數據被破壞,而不是增量/減量,數據每次都被替換。

相關問題