01노드 RTT: 홍콩·싱가포르 vs 미서부 StoreKit 2 샌드박스
노트북 Wi-Fi가 아니라 임대 Mac에서 측정하세요. sandbox.itunes.apple.com, 웹훅 리전, 스파이크 중 git remote까지 p50·p95 RTT를 샘플합니다.
| 팀 프로필 | 홍콩·싱가포르 vuzcloud | 미서부 vuzcloud | RTT·비용 힌트 |
|---|---|---|---|
| 동아시아 리뷰어 | Apple 샌드박스 중앙값 <80ms | 태평양 140–200ms 흔함 | StoreKit UI 테스트 기본 홍콩·싱가포르 |
| us-east-1 웹훅 | 미동부 웹훅 추가 홉 | AWS 동부 RTT 낮음 | Mac은 미서부·원장은 동부 분할 |
| Server API만(헤드리스) | Mac까지 RTT 최소 | 동일 글로벌 HTTPS | API 리전 신화보다 SSH·Xcode 경로 |
| 임대 비용 전환 | 어느 리전이든 약 5 과금일 후 주간이 유리 | 일·주 임대 매트릭스 | |
02Mac mini M4 16GB vs 24GB: StoreKit 2·Xcode 샌드박스
StoreKit 2는 온디바이스 영수증 파싱 부담이 줄었지만 Xcode·시뮬레이터·JWS 검증기는 여전히 겹칩니다. 스킴 하나·시뮬레이터 하나·헤드리스 Server API 폴링이면 16GB로 짧은 스파이크가 가능합니다.
| 워크로드 | M4 16GB | M4 24GB |
|---|---|---|
| 구독 SKU 1개 + Server API 폴링 | 여유 | 디스크 캐시 무거우면 제외 |
| 시뮬레이터 2개 + Fastlane 업로드 | 스왑·RSS 12GB 중단 | 권장 |
| 소모성 IAP·오퍼 코드 UI | VNC 끄면 OK | GUI 유지 시 안전 |
03병렬 분할: Mac은 Xcode 샌드박스, Server API는 헤드리스 레인
예산 팀은 GUI 한 세션에 모든 것을 넣지 않습니다. 갱신은 인터랙티브, JWS 배치는 헤드리스로 나눕니다.
- 레인 A(Mac):Xcode StoreKit 구성·샌드박스 Apple ID·
Transaction.updates로그 - 레인 B(동일 Mac·SSH):샌드박스 JWT로 App Store Server API curl/Swift
- 레인 C(선택):Linux CI가 JWS만 수신—비밀은 Mac, 처리량은 CI
- 금지:16GB에서 VNC 2개 + 시뮬레이터 2개—레인 B는 SSH만
04App Store Server API·JWS 검증 6단계(임대 Mac)
①인앱 구매 권한 API 키(.p8) 발급·볼트 보관 ②ES256 JWT(issuer·key·bundle)로 샌드박스 베이스 URL 호출 ③Xcode에서 StoreKit 2 구매·transactionId 확보 ④GET /inApps/v1/transactions/{id}로 signedTransactionInfo 저장 ⑤Apple 루트·중간 인증서로 JWS 오프라인 검증 ⑥Server Notifications V2 샌드박스 이벤트로 웹훅 갱신 확인
05샌드박스 임대 예산을 태우는 리스크
- 환경 불일치:프로덕션 API 키 + 샌드박스 거래 → 불투명 401
- 시계 드리프트:신규 임대 Mac에서 JWT notBefore 실패
- 잘못된 노드 고집:동아시아 리뷰어에 미서부 Mac → StoreKit 버그처럼 보이는 재시도
인용 한:동아시아 리뷰어 우세면 홍콩·싱가포르, 북미 웹훅·CI 우세면 미서부.
인용 둘:시뮬레이터 2개 + JWS 배치 전에 24GB로 올리세요.
인용 셋:동일 노드 5 과금일 후 요금에서 주간 SKU를 확인하세요.
06FAQ: StoreKit 2 샌드박스·App Store Server API
레거시 영수증이 필요한가요? StoreKit 2는 Server API JWS·Transaction API로 통일하세요.
EU·US 테스터를 한 Mac에? 다수 RTT가 짧은 노드를 고르고 p95 격차 50ms 넘으면 임대를 분할하세요.
Mac에서는 JWS OK, CI만 실패? CI 이미지에 중간 인증서가 없거나 시계가 어긋납니다. Mac에서 검증한 번들을 CI에 고정 복사하세요.
vuzcloud Mac mini M4로 StoreKit 2·Server API 검증 시작
영수증·샌드박스 매트릭스·임대·RTT 매트릭스를 읽은 뒤 요금·구매에서 샌드박스 노드를 고르세요.