載入中……
[供應]游戲服務器架構設計的參考依據
- 產品產地:
- 產品品牌:天運科技
- 包裝規(guī)格:
- 產品數量:1000
- 計量單位:月
- 產品單價:300
- 更新日期:2016-04-20 08:57:15
- 有效期至:2017-04-20
-
-
- 收藏此信息
游戲服務器架構設計的參考依據
詳細信息
眾所周知,一個出色的游戲服務器架構是游戲服務器成功的一半,游戲服務器架構設計在游戲服務器租用的重要程度也由此可窺探一斑.那么在最初設計游戲服務器架構時,游戲服務器租用商們需參考哪些依據呢?
一、選擇合適的游戲服務器運行平臺
服務器操作系統大多采用Unix和Linux操作系統.而Linux的發(fā)行版本可以大體分為兩類,一類是商業(yè)公司維護的發(fā)行版本,一類是社區(qū)組織維護的發(fā)行版本,前者以著名的Redhat(RHEL)為代表,后者以Debian為代表.Redhat的穩(wěn)定性和硬件兼容性都比Debian高.并且RHEL的生命周期是7到10年,基本上可以覆蓋硬件的生命周期,也就意味著一個新硬件安裝以后,不用再次安裝操作系統.而Debian的生命周期是不固定的,一般新版本發(fā)布以后,上個版本再維護18個月.而Debian的版本發(fā)布時間間隔不穩(wěn)定,經常會延期.綜合起來一個版本的生命周期一般在3~4年.
二、游戲服務器并發(fā)處理能力
對于游戲服務器而言,首先應該保證的就是高并發(fā)處理能力,從而最大限度的提高服務器的吞吐率,提高單服在線人數,降低服務器硬件成本.實現的方式有很多,沒有決對好壞.只有針對具體的需求,才有好差之分.服務器服務中存在很多模塊,所以的模塊都將混入這個單線程中,如果cpu性能出現瓶頸,優(yōu)化成本將會非常高,由于是單線程,拋棄了鎖等束縛,給程序員提供太大的空間,往往在書寫的過程中比較隨意,如果沒有沙盒機制,要保證代碼的質量對參與開發(fā)的每個程序員的水平要求都要要比較高.第二:主邏輯多線程+[多輔助線程]?好處:充分利用多核
三、對數據持久化的考慮
對于服務器而言,數據是最重要的.有一個好的數據持久化方案,對于服務器開發(fā)將會是事半功倍.在介紹數據的持久化方案以前,我們現在介紹服務器數據讀取和修改的運用場景.服務器運行過程中會不斷的生產數據,并且將數據落地.但是如果服務器每次都直接從數據庫或者文件讀取和修改數據,那么服務器的io操作可能成為瓶頸,可以采用異步讀寫方案來降低io讀寫對服務器邏輯處理能力影響,但是同時提高邏輯的復雜度.所以較好的方式是將數據緩存到內存中,同步讀寫,每次讀寫都先操作緩存,然后再由緩存同步到數據庫.同步機制決定了數據持久化能力.如果自己去實現這套機制無疑是造輪子,而且效果不一定好.數據持久是每個服務器都需要的.已經有很多專業(yè)的團隊提供有很多開源的成熟的解決方案.
四、服務器研發(fā)維護成本
相信有很多滿足上面要求的服務器架構,但是選擇這些架構需要根據游戲服務器租用團隊成員的自身能力.比如erlang語言,天生支持分布式,支持沙盒機制,由于本身是函數式編程語言,天生時候并發(fā)編程,簡單熱更新等機制.但是團隊成員中沒有一個會erlang,我們也不會選擇erlang語言.因為我們耗不起從頭學習erlang的時間.
同類型其他產品
免責聲明:所展示的信息由企業(yè)自行提供,內容的真實性、和合法性由發(fā)布企業(yè)負責,浙江民營企業(yè)網對此不承擔任何保證責任。
友情提醒:普通會員信息未經我們人工認證,為了保障您的利益,建議優(yōu)先選擇浙商通會員。