← 回大廳

Wolves Crash — 承載 / 壓測報告

量測日:2026-08-07 · 平台版本 v2.16 · 遊戲:雙注紅飛機(共享局)· 量測環境:正式機
單一房間可穩定容納
700 人同時在玩
同一款遊戲、同一局、同時下注與收手的人數。多開房間可再往上擴。
下注確認
425ms
p99
收手成交
23ms
p99
畫面同步
34ms
p99
失敗率
0%
700 人 × 5 局

1. 這個數字是怎麼量的

2. 為什麼「共享局」的容量要另外算

一般單人遊戲:送一個請求、算一次、回一次,容量就是「每秒能處理幾次」。
Wolves Crash 是全場玩同一局 —— 同一架飛機、同一個爆點,所以吃的是完全不同的三件事:

所以判斷「撐不撐得住」要同時看四個延遲 —— 只看其中一個會得出錯誤結論。

3. 實測數據

同時在玩下注確認 p50 / p99收手成交 p50 / p99 畫面同步 p50 / p99結算 p95訊息量失敗 / 斷線
500 人179ms / 387ms3ms / 16ms7ms / 18ms31ms3,248 則/秒0 / 0
700 人246ms / 425ms6ms / 23ms10ms / 34ms65ms5,458 則/秒0 / 0
1,000 人431ms / 2.39s11ms / 679ms15ms / 428ms66ms11,614 則/秒0 / 0

合格線(超過就感覺得到):下注確認 p99 ≤ 500ms、收手成交 p99 ≤ 150ms、畫面同步 p99 ≤ 300ms、 失敗率 0、無人被斷線。

到 1,000 人為止沒有任何一筆失敗、沒有人被斷線,但 1,000 人時三項延遲一起越線 (而且重跑的數字很不穩定,代表那台機器已經在邊緣)。所以認列 700 人為單房穩定容量。

資源用量(700 人在玩時)

4. 這一天怎麼從 400 人做到 700 人

每一步都是「先量出瓶頸在哪,再改」—— 前兩次憑經驗猜,兩次都猜錯。

做了什麼結果
起點單房 400 人(卡在收手回應)
換資料庫(SQLite → MySQL)容量沒變、下注反而更慢 —— 猜錯,但量出來就認
收手廣播合批:原本每個人收手都對全場廣播一次(500 人 = 500 則 × 500 收件人),改成同一瞬間的收手合成一則收手回應 176ms → 12ms;容量 400 → 500 人
扣款批次化:一批不管幾注,都只用三道資料庫指令完成(鎖一次、寫一次、記帳一次)下注確認明顯下降
批次跟人數走:批次大小 = 在場人數 ÷ 5(太小則交易次數多、太大則鎖太久,實測最佳值就在這)下注確認 883ms → 425ms;容量 500 → 700 人

🔴 玩家自己的收手回覆一直是當場立刻送的 —— 合批的只有「別人收手了」這種給全場看的通知。 收手是這款遊戲最關鍵的一秒,任何優化都不會拿它去換。

5. 連線洪峰是另一個數字

「同時在玩 700 人」跟「同一瞬間一起連進來 700 人」不是同一件事。 實測若讓幾百條連線在同一毫秒握手,作業系統的連線佇列會滿並直接拒絕 —— 那是連線洪峰的極限,不是算力的極限。

6. 換算:可以接多少人

7. 這份數字的適用範圍

capacity.html · v5.0 · 2026-08-07 · 數據由壓測工具在正式機實測產生