若把機隊裡每一台 Mac mini M4 都當成無差別的「很快機器」,團隊很容易做出感覺隨機的佇列。2026 年勝出的營運者會公開一份容量包絡:對基線並發、從共用池受控借用突發容量,以及在震盪開始前歸還借用槽位的重置視窗,形成透明契約。本文提供兩張決策矩陣、可直接貼進 runbook 的數值起點,以及與您可能已在使用的標籤路由對齊的八步上線流程。
延伸閱讀:軟/硬親和與分散規則、預約、搶占與冷卻。準備在香港、日本、韓國、新加坡或美國新增節點時,請從定價開始,並將說明中心保持開啟以利 SSH/VNC 上線模式。
為何 Mac runner 的平均 CPU 會誤導容量規劃
Apple Silicon Mac CI 主機常顯示「舒適」的平均 CPU,佇列卻仍錯過截止時間。原因是結構性的:Xcode 編譯、UI 測試與簽章步驟會在磁碟 IO、Metal 或 codesign 鏈上形成短尖峰。平均值會掩蓋隊頭阻塞,尤其多個儲存庫在沒有包絡的情況下共用一台主機。包絡模型迫使您以並行工作數與佇列深度思考,而非僅看利用率圖表。
- 並行工作數才是真正的貨幣;CPU 百分比只是次要訊號。
- 佇列深度告訴您借用者是否讓基線挨餓;延遲百分位則反映重置是否過於激進。
- 重置視窗把「禮貌約定」變成可執行政策,讓共用池在事故負載下仍公平。
三層包絡:基線、突發池、重置
將每個事業單位(或每條關鍵任務流水線)視為在標記過的 Mac mini M4 節點集合上擁有基線包絡。突發池是標籤相符時任何合格工作流皆可借用的共用容量,受每租戶最大借用與依時間或工作數重置的限制。重置層則防止「暫時突發」變成永久駐紮。
| 層級 | 保證內容 | 典型控制手段 |
|---|---|---|
| 基線 | 為小隊或發布列車保留的最低並行工作數 | 專用標籤、runner 群組,或每佇列硬性最小副本數 |
| 突發借用 | 發布週或事故熱修風暴期間的額外並發 | 帶每租戶數值上限的共用 burst-eligible 標籤 |
| 重置 | 除非經核准政策續借,否則借用槽位到期 | 冷卻分鐘數、行事曆重置,或每日「借用權杖」預算 |
決策矩陣:允許突發借用 vs 強制硬上限
將新儲存庫接入 Mac 機隊時使用此矩陣。若不確定,凡涉及簽章金鑰或正式發布產物者,預設採硬上限,待可觀測性證明佇列穩定後再放寬。
| 工作型態 | 借用? | 理由 |
|---|---|---|
| 功能分支 CI(lint + 單元) | 可,搭配重置 | 需求具彈性;失敗成本低;適合共用突發 |
| 發布列車(RC 建置) | 有限借用 | 有時間邊界的突發與嚴格重置,對齊變更諮詢視窗 |
| 需要 GPU 穩定性的 UI 測試分片 | 通常否 | WindowServer 上有隱藏競爭;偏好標記分片與硬上限 |
| 已簽章並公證的產物 | 硬上限 | 可稽核性與決定性順序優於吞吐量 |
本週即可採用的可執行參數
數字為起點——請依自身 p95 工作持續時間調校。目標是讓政策對開發者可讀:「你永遠有兩條車道;若池有餘裕,發布期可申請四條。」
- 每小隊基線:行動團隊在 RAM ≥24 GB 的 M4 主機上 2 個並行 macOS 工作;較小服務小隊 1 個。
- 每小隊突發上限:除非變更票暫時提高,否則高於基線的借用工作不得超過 +3。
- 重置視窗:借用槽位在牆鐘 45 分鐘後或完成 12 個突發工作後到期,以先到者為準。
- 佇列深度告警:任一地區 macOS 佇列深度 > 25 且持續 10 分鐘即呼叫值班。
- 公平護欄:若單一儲存庫一日內消耗 >35% 突發分鐘數,自動撤銷突發標籤待複查。
營運備註:沒有重置的突發借用,就是「五個團隊共用十台 Mac」悄悄變成「一個團隊佔九台」。請把數字公布在內部開發者入口;保密只會滋生怨懟,而非合規。
機隊全面採用的八步上線
- 盤點 runner:依標籤、地區、RAM 層級與 Xcode 釘選;未知節點不得進突發池。
- 定義基線:由工程主管共同簽核的試算表,而非僅基礎設施團隊。
- 實作突發標籤:與基線標籤分離;在 README 範本記載資格。
- 自動化重置:以排程工作或政策引擎在預算到期時移除突發標籤。
- 串接指標:佇列深度、等待時間 p95、每儲存庫借用分鐘數;各地區獨立儀表板。
- 季度兩次演練:模擬突發耗盡,驗證基線仍可消化。
- 事故檢討必須引用包絡參數;有證據時更新上限。
- 硬體擴展:當基線經常挨餓——NodeMac 在香港、日本、韓國、新加坡與美國提供專用 M4 節點,無需機房物流即可取得可預測基線。
常見問題
2026 年 Mac CI runner 的容量包絡是什麼?
它是每團隊或每流水線的契約:載明基線並行工作、選用的突發借用規則,以及借用容量如何重置。包絡讓公平從文化變成營運。
何時應停用突發借用?
當需要獨佔硬體、隔離不穩定測試的決定性,或受規範建置要求佇列順序必須對應稽證據時。請偏好硬上限與專用 runner 群組。
重置視窗如何降低機隊震盪?
重置強制借用的並發在未明確續借時到期,阻止長期佔用共用池,並在事故後為基線留出空間。