若您是預算敏感的 iOS 訂閱/內購測試團隊,需在 vuzcloud 遠端 Mac 沙盒上同時跑 StoreKit 2 與 App Store Server API,請先量節點 RTT再鎖記憶體檔位與租期成本;刊例見定價頁,收據場景見跨境收據沙盒文。🛒
01痛點拆解:沙盒重放、Server API 與租期三線拉扯
核准單常要求「本週內完成訂閱回歸」,卻未寫清跨洋 RTT與租期攤提。
- 痛點一:港新營運對美西 App Store Server API,高頻 Get Transaction Info 易受延遲抖動。
- 痛點二:StoreKit 2 沙盒、Xcode 與 JWS 驗簽腳本同機,M4 16GB 易在第二路模擬器時交換。
- 痛點三:日租 spike 驗收、月租顧穩態;無租期成本閾值則反覆換機浪費工時。
02節點 RTT:港新對美西與 Server API 決策矩陣
下列表供遠端 Mac 沙盒選區;背景延遲可併讀API RTT 成本矩陣,並以貴司終端複測 P90。
| 比較軸 | 香港/新加坡為主 | 美西為主 |
|---|---|---|
| StoreKit 2 互動重放 | 亞太測試員、本地 Xcode 較順 | 跨洋 RTT 較高,宜批次 |
| Server API 沙盒端點 | 對沙盒 API 跨洋呼叫 | Get Transaction Info 輪詢較穩 |
| RTT 拆隊列門檻 | P90 逾約二百毫秒且需持續互動 → 佇列或第二台美西專職機 | |
03M4 十六吉 vs 二十四吉:訂閱/內購沙盒承載
十六吉位元組:單一 Xcode、單路 StoreKit Testing 加輕量 JWS 腳本。二十四吉位元組:雙模擬器、訂閱狀態輪詢與日誌聚合並行。
| 場景 | 16GB | 24GB |
|---|---|---|
| 單 SKU 回歸 | 日租驗收優先 | 可選,非必須 |
| 多訂閱+Server API 腳本 | 易交換、JWS 逾時假性失敗 | 建議 |
| 併發沙盒會話 | ≤ 二路重載 | 第三路或 CI 同機 |
04並聯拆分:收據、沙盒與 Server API 分機
- 劇本甲:港新機跑營運報表/收據快照,美西機跑 StoreKit 2 高頻重放(對照收據沙盒文)。
- 劇本乙:雙台 16GB 分「基線訂閱」與「試錯 SKU」,成本低於單台硬升 24GB 長租。
- 劇本丙:預算極緊則單機 16GB,Server API 改離峰批次,互動沙盒限二路。
05App Store Server API/JWS 沙盒校驗五步
於 vuzcloud 節點以 SSH 執行(端點以 Apple 沙盒文件為準):
- 步驟 1:App Store Connect 建立沙盒測試員,下載 Server API 私鑰,記錄 Key ID、Issuer ID。
- 步驟 2:Xcode/StoreKit 2 完成訂閱或內購沙盒購買,取得
signedTransactionJWS。 - 步驟 3:以 ES256 JWT 呼叫 Get Transaction Info(沙盒主機),核對 bundleId、productId。
- 步驟 4:以 Apple 根憑證驗簽 JWS,檢查 NTP 與系統時間,避免混用正式端點。
- 步驟 5:高頻 SKU 呼叫 Get All Subscription Statuses,結果寫入隔離目錄供 CI 比對。
06租期成本閾值與落地五步
| 訊號 | 建議租期 |
|---|---|
| 單次 spike、JWS 流程驗通 | 日租驗收 |
| 連續五個工作天全日沙盒+Server API | 改週租鎖定 |
| 跨版本訂閱回歸常態化 | 月租+並聯第二台 |
- 一:購買頁選區域與 M4 檔位,支援中心完成 SSH。
- 二:量測終端—節點—Server API P90 RTT 並存檔。
- 三:執行上文 JWS 五步,金鑰僅放環境變數。
- 四:系統碟可用餘至少三十吉位元組,收據與建置快取分目錄。
- 五:採購單附 RTT、水位與租期,首頁對照套餐。
200ms
跨洋互動拆隊列參考
2
16GB 沙盒重載上限
30GB
系統碟最低水位
可引用:跨洋批次 API 逾時可設四十五秒、退避三次,減少 RTT 抖動造成的假性驗簽失敗。
07StoreKit 2/Server API 沙盒 FAQ
問:沙盒一定要租美西遠端 Mac 嗎?
答:若團隊在港新且後端也在亞太,優先亞太節點;僅當對美西 Server API P90 逾約二百毫秒且需高頻輪詢時,再增租美西專職機。
問:M4 16GB 夠跑訂閱回歸嗎?
答:單路 StoreKit 2 通常足夠;雙模擬器加腳本並行建議 24GB 或並聯第二台 16GB。
問:JWS 驗簽失敗最常見原因?
答:系統時間漂移、沙盒/正式 API 主機混用,或 JWT 過期;請確認 NTP 與 sandbox 端點。