新聞資訊
行業(yè)資訊
2024年游戲服務器壓力測試
2023-10-19 10:22:37
摘要:游戲項目上線之前,一般需要對項目做個壓力測試,從中可以評估項目的性能瓶頸,做出針對性的優(yōu)化;那么如何做游戲服務器壓力測試?

游戲項目上線之前,一般需要對項目做個壓力測試,從中可以評估項目的性能瓶頸,做出針對性的優(yōu)化;那么如何做游戲服務器壓力測試?


一.首先明確需要測試壓力的內容:


1.游戲服務器硬件

a.硬盤I/o

b.內存

c.CPU


2.網(wǎng)絡壓力

a.長連接

a1.最大連接數(shù)

a2.流量(內網(wǎng)、外網(wǎng)、進、出)

b.長連接短周期(類似Http的TCP應用,這個比較特殊的一個需求,專門針對LoginAgent)

b1.每秒建立的連接數(shù)

b2.實際處理能力


3.數(shù)據(jù)庫

a.每秒事務數(shù)

b.每秒鎖等待數(shù)

c.平均延時(ms)

d.CPU暫用

4.多線程的最優(yōu)線程數(shù)

a.數(shù)據(jù)庫執(zhí)行的多線程

b.多連接處理


二.Windows Server環(huán)境測試方式


1.服務器性能監(jiān)測

使用Server自帶的性能監(jiān)測器設置各個進程的監(jiān)測參數(shù)。Window的這個自動工具做的相當強大。大家自己摸一摸基本就會用了。每個參數(shù)都由詳細的說明。


2.案例設計注意

a.對于數(shù)據(jù)庫的性能測試上,現(xiàn)在由于所有的游戲服務器構架在DB前面都有一個實現(xiàn)DB緩沖功能的進程,以減少數(shù)據(jù)庫頻繁的讀寫操作。所以其實數(shù)據(jù)庫的讀是一個輕量級的數(shù)量;而數(shù)據(jù)庫的寫操作是一個周期性能過程。案例設計一定要能夠驅動這種周期性能過程。比如我們游戲的戰(zhàn)斗,導致游戲玩家數(shù)據(jù)的改變,或驅動所有在線玩家數(shù)據(jù)的周期性存儲。

b.選擇具有代表性,并且最頻繁的游戲操作。用于進行最高用戶在線的各種性能指標采集。

我們選擇的是:戰(zhàn)斗、移動、聊天

c.聊天性能測試

廣播聊天是最為考驗游戲信息發(fā)送能力的功能。通過進行全局廣播的壓力測試。我們可以獲取服務器進程發(fā)送信息到客戶端的最高承載量。進而可以對我們的各種廣播功能進行一個預估和頻率限制。

d.同屏玩家的移動測試

移動+廣播。這兩種信息,基本是網(wǎng)絡游戲流量的70-80%左右。同屏玩家數(shù)量,將會增加各種數(shù)據(jù)的廣播需求,非常影響游戲性能。所以同屏的移動測試也是廣播測試的一個必要環(huán)節(jié)。需要根據(jù)實際結果進行適當?shù)膬?yōu)化。

e.大量玩家同時登錄測試

玩家登錄時,有大量的信息需要進行分配和初始化;同時也有大量的數(shù)據(jù)需要下傳客戶端。服務器需要進行大量的TCP連接建立。所以是一個比較關鍵的過程。這個測試案例是一個比較特殊,但是運營是肯定會碰到的案例。

f.由于線程池處理事務,隨著事務的時耗,存在一個最優(yōu)線程數(shù)的問題。過多的線程反而會降低服務器效率

3.細節(jié)問題

a.進行測試需要仔細思考客戶端性能影響服務器最后表現(xiàn)的可能性。比如

a1.模擬客戶端的性能無法有效處理服務器返回信息,可能就導致服務器發(fā)送的信息緩存在服務器系統(tǒng)緩存,從而表現(xiàn)出服務器內存不斷增加。表現(xiàn)為服務器發(fā)送能力不足,其實可能根本就是客戶端的性能問題

a2.客戶端性能問題,導致發(fā)起的請求數(shù)過少,從而導致單位時間內服務器處理的請求過少。表現(xiàn)為服務器性能不足,其實根本就是客戶端的請求能力不足。

b.網(wǎng)絡帶寬導致最后表現(xiàn)不足

b1.確認服務器的各個網(wǎng)卡,以及相互的帶寬。不然可能因為相互帶寬,導致服務器對于客戶端請求的處理延時。表現(xiàn)為服務器卡機

b2.客戶端模擬多個玩家,比如1000個玩家。而客戶端的網(wǎng)卡或者客戶端與服務器之間的中轉服務器帶寬過小,導致服務器數(shù)據(jù)發(fā)送不出,內存不斷增加。表現(xiàn)為服務器發(fā)送能力不足,其實是中間帶寬問題。

c.debug i/o導致服務器性能下降

c1.進行性能測試,一定要取消debug用的同步的i/o.比如我們服務器的debuginternalLog.同步i/o是非常影響性能的,特別在壓力測試下可能導致每秒上千上萬甚至幾十萬次的執(zhí)行。一處的文件寫入操作就可以導致幾十萬次的處理能力變成幾千次的處理能力。

c2.客戶端避免進行阻塞操作導致模擬多用戶性能下降,導致服務器表現(xiàn)性能下降

d.流量需要區(qū)分內網(wǎng)網(wǎng)

內、外網(wǎng)流量在游戲正式運行時是完全分開的。價格也是完全不同的。一個千M的外網(wǎng)是一個無法想象的運營成本,而kmbps/s現(xiàn)在已經(jīng)是一個可以接受的代價。游戲進程需要進行不同網(wǎng)卡的配置和綁定。確定內外網(wǎng)流量。

755800提供香港服務器、美國服務器等全球海外服務器租用托管,是區(qū)域鏈、直銷、流媒體、外貿、游戲等服務器解決方案首選品牌。



海外服務器免費測試http://hbjsdrq.com/


USA-IDC為您提供免備案服務器 0元試用
立即聯(lián)系在線客服,即可申請免費產(chǎn)品試用服務
立即申請