AWS 的官方說明指出,EC2 Mac 主機有至少 24 小時的配置要求;這代表只看每小時或每月標價,可能會漏掉最低使用週期與閒置成本。AWS EC2 Mac 官方說明

症狀: 你看到月租價格,卻無法判斷 Xcode、測試與 CI 是否真的划算。 最快解法: 先用「租賃費用+環境準備+等待與重跑+維護」除以成功交付次數,再決定按需租用、長期租用,或暫不擴容。

這也是判斷 macOS 雲端伺服器價格 的正確口徑:短期或負載不確定時,優先選按需的遠端 Mac;長期且高利用率穩定後,才評估長期方案或自有設備。

先定義有效交付成本

這篇文章適合三類讀者:

  • 短期需要 Xcode 或 macOS 工具鏈、不想購買實體 Mac 的獨立開發者。
  • 需要為 iOS CI 增加臨時或長期節點的 DevOps 工程師。
  • 需要審核節點預算、利用率與擴容方案的研發負責人。
不要先問「一個月多少錢才合理」,而要先建立下面的成本式:

每次成功交付成本 =(租賃費用+一次性環境準備成本+維護投入+等待成本+失敗重跑成本)÷ 成功交付次數

其中,租賃費用是供應商實際收取的週期費用;環境準備成本則是安裝 Xcode、SDK、依賴、憑證與快取所耗用的工程時間。等待成本包括 CI 排隊、遠端連線中斷及人工介入,失敗重跑成本則應根據建置紀錄計算,而不是憑感覺加一個緩衝比例。

Apple 的 Xcode 系統需求頁面 會隨版本列出相容的 macOS 條件。你因此不能只拿「某一款 Apple Silicon」的名稱推定一定適合;應先確認 Xcode、SDK、Simulator 與專案依賴是否能在目標系統上運作。

租期與閒置成本

一個月的價格怎樣才算合理

月租沒有脫離工作負載的固定答案。你應先記錄:

  • 預計啟用日期與真正開始建置的日期。
  • 實際使用天數,而非團隊預計保留節點的天數。
  • 版本遷移、測試週期或發布窗口的結束條件。
  • 節點停止使用後,是否仍需保留簽名環境、快取與可回復狀態。
若只需完成一次版本相容性驗證,月租可能把大量時間變成閒置;若節點每天都要接收 CI 工作,過短租期則可能反覆準備環境,令一次性成本被重複支付。這時應把月租與按週租用的總支出,同時放進同一個工作表,而不是只比較月費數字。

按週或按月的選擇

使用下列條件作第一輪分流:

  • 若啟用日期、停用日期和工作量都已確定,且中間幾乎沒有空窗,選擇覆蓋整段週期的方案。
  • 若專案仍在評估 Xcode 相容性、CI 工作量尚未穩定,先按較短週期租用,完成驗證後再續租。
  • 若節點只在發布或回歸測試期間使用,優先比較按需租用與任務分時,不要預設長期保留。
  • 若你無法說明何時停止續租,先不擴容,回到建置紀錄確認實際使用時段。
AWS 的 [EC2 Mac 執行個體文件](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-mac-instances.html?utm_source=openai) 可用來核對公有雲 Mac 主機的配置與計費限制;外部服務的價格、可用區域和最低計費條件不能直接套用到 MACGPU。你應以 [MACGPU 的繁體中文方案頁](https://macgpu.com/zh-Hant/index.html) 當日顯示的週期與可用配置重新核對。

工作負載與配置需求

Xcode 開發和 CI 不應使用同一個模糊的「高效能」標籤。你需要把負載拆開:

  • Xcode 編譯:觀察專案依賴、原始碼規模、編譯是否經常觸發完整重建。
  • Simulator:確認測試需要哪些裝置映像與圖形互動,不要把單純命令列建置與 Simulator 負載混在一起。
  • 索引與快取:首次開啟專案、清除快取及更換分支時,磁碟與記憶體壓力可能不同。
  • 並行測試:記錄同一工作內同時啟動的測試程序,而不是只看 CI 平台上有多少名開發者。
  • 背景服務:依賴服務、日誌、Artifact 暫存和自託管 Runner 都會佔用持續運作的資源。
Apple 的 [Xcode Cloud 使用說明](https://developer.apple.com/xcode-cloud/get-started/?utm_source=openai) 與 [Xcode Cloud 使用資料文件](https://developer.apple.com/documentation/xcode/reviewing-xcode-cloud-usage-data/?utm_source=openai) 可協助你理解建置、測試與使用量的記錄方式。這些資料的價值不在於直接替你算出租金,而在於提供任務次數、持續時間和失敗情況等取數方向。

對配置的判斷順序應是:

  1. 先確認 macOS、Xcode 和 SDK 相容性。
  2. 再找出編譯、Simulator、索引和並行測試中的峰值負載。
  3. 以峰值而非平均值篩選可用配置。
  4. 透過試運行觀察是否出現記憶體壓力、磁碟不足或任務等待。
  5. 若峰值只在發布窗口出現,優先短期增加節點,而不是全年保留更高配置。
因此,「Xcode 要租什麼配置的 Mac」沒有脫離專案資料的通用答案。Apple Silicon 是工具鏈相容性的條件之一,不是性能保證;最終要由你的實際建置、測試和背景服務負載驗證。

並發、利用率與節點數量

「團隊有幾位開發者」、「同時有幾個 CI 任務」以及「單一任務開幾個並行工作」是三個不同變數。把它們相乘,通常會高估需求;只看平均任務數,則可能在發布高峰排隊。

你可以從 GitHub Actions 的 工作流程指標文件 取出執行時間、排隊狀態與失敗紀錄,再對照發布日的高峰資料。若使用自託管 Runner,還要核對 GitHub 自託管 Runner 要求,包括 Runner 是否能持續連線、是否能安全執行工作,以及系統維護責任由誰承擔。

按以下條件決策:

  • 若大部分任務可排隊,且等待不會影響發布窗口,先使用單一節點分時執行。
  • 若任務持續佔用節點,排隊已造成明確交付延遲,再評估增加節點。
  • 若只有少數高峰日需要並發,先按需租用額外節點,並把高峰結束設為停止條件。
  • 若每天都有穩定任務且利用率可由 CI 記錄證明,再比較長期租賃與自有設備。
GitHub 的 [Actions 計費文件](https://docs.github.com/en/billing/concepts/product-billing/github-actions?_fsi=LlxUgcTQ&utm_source=openai) 也提醒你,託管執行器與自託管執行器的費用責任不同。比較方案時,必須把排隊時間、Runner 維護、快取管理與失敗重跑一起計算,不能只比較每分鐘或每小時費率。

環境準備與維護工時

遠端 Mac 的租用成本不只在付款頁面上。第一次交付時,你通常還要處理:

  1. 透過 SSH 或 VNC 驗證帳戶、權限和連線方式。
  2. 安裝指定版本的 Xcode、Command Line Tools、Homebrew 與專案依賴。
  3. 初始化 SDK、Simulator、套件快取與建置目錄。
  4. 配置 Git、CI Runner、環境變數和日誌保存位置。
  5. 匯入簽名憑證與 provisioning profile,並確認帳戶隔離。
  6. 執行一次完整建置、測試、Artifact 輸出和失敗重跑。
  7. 測試斷線、登出、系統更新與重新啟動後能否恢復。
Apple 的 [Apple Developer Program License Agreement](https://developer.apple.com/support/terms/apple-developer-program-license-agreement/?utm_source=openai) 應作為簽名、帳戶和軟體使用條件的核對來源。不要把團隊憑證直接放在未定義權限的共享工作階段,也不要因為節點可遠端登入,就假定所有帳戶操作都符合團隊的安全要求。

把工時拆成兩筆:

  • 一次性準備成本: 全新交付到第一個成功建置所需的工程時間。
  • 持續維護成本: 每週更新依賴、處理快取、重啟恢復、修復 Runner 或調整簽名環境所需的時間。

注意:如果一次重啟就需要人工重新登入、重新啟動服務或重新建立快取,這不是單純的操作瑕疵,而是應加入預算的持續維護成本。

三類預算結論

完成取數後,你可以用這個條件清單收斂方案:

  • 短租: 使用週期短、Xcode 或 SDK 相容性尚未確定、工作量波動大,或只在版本遷移與發布窗口使用。
  • 長租: 任務持續、並發和使用時段有建置紀錄支持,且環境準備成本已被攤薄。
  • 暫不擴容: 目前主要問題是設定錯誤、Runner 排隊策略或失敗重跑,而不是節點資源不足。
  • 比較自有設備: 長期高利用率、維護責任有人承擔,並且你需要穩定保留實體設備或特定硬體介面。
  • 優先試運行: 需求接近臨界值,或團隊尚未取得完整峰值資料;先選能覆蓋峰值任務的最小方案,再用成功交付成本重新評估。
若你要把節點用於 CI,還應把佇列時間、重跑次數、部署失敗和人工恢復事件持續記錄。這些資料比單次報價更能回答「一個月是否合理」,也能避免因短期高峰而全年過度配置。

如果你目前採用的是一般 Linux 雲端主機或臨時虛擬化方案,常見缺點是無法直接滿足 Xcode 工具鏈、Apple 平台簽名和 Simulator 驗證;即使能透過額外層次繞過,還可能增加相容性排查、圖形互動和恢復維護成本。相較之下,MACGPU 的遠端 Mac 方案讓你可以按照已估算的週期與峰值需求選擇實體 macOS 節點;你可先參考遠端 Mac 可用方案,用一次試運行驗證實際交付成本,再決定續租或擴容,而不是先承諾一個未經證明的長期預算。