共有リモート Macでは並行プルディスク IOが先に飽和しやすいです。ビルドリソースプール運用向けに、閾値一覧と手順、タイムアウト・リトライを整理します(プル安定性 FAQ)。

リソースプール容量と並行モデル

プールではディスク帯域同時取得上限を先に決めます。同時ジョブは min(CPU/2, ディスク許容) 目安に抑え、git fetchnpm ci 等は直列化または別キューへ。

シナリオ別:並行モデルの決め方(3 手順)
  • 計測diskutil/モニタで使用率と await を確認。
  • 上限:下表を初期値にし、P95 が悪化したら並列を 1 段階下げる。
  • 分離:モノレポ用と軽量用 runner を分けキャッシュ汚染を避ける。

Git/NPM 系プルキューとロック

同一ワークスペース複数ジョブは .git/index.lock 等で競合します。作業ディレクトリ分離、共有キャッシュは RO+オーバーレイ、またはロック付きキューで直列化してください。

リソース推奨同時実行(単一ノード目安)ロック/キュー戦略
Git fetch/clone(同一ボリューム)2〜4repo 単位 mutex、または shallow/cache ディレクトリ分離
npm/pnpm/yarn install1〜2キャッシュは共有可、node_modules はジョブ専用
Homebrew/CocoaPods1更新系はグローバルロック、CI では事前ボトルイメージ化を検討
Docker pull1〜2レイヤー競合を避け、プル後に prune 閾値を設定

ディスクとキャッシュパーティションの閾値

使用率が高いとメタデータが遅延し並行プルが失敗しやすくなります。システムとビルド・キャッシュは分離推奨。詳細はキャッシュ戦略

指標警告(Warning)制限(Throttle)緊急(Halt)
ボリューム使用率≥ 80%≥ 85%(新規大容量プルをキュー)≥ 90%(不要キャッシュ削除/ジョブ延期)
空き容量(絶対値)< 30 GB< 15 GB< 8 GB
ディスク await(ms)> 20ms が 5 分継続> 50ms> 100ms(プル並列度を半減)
Docker イメージ週次 docker system pruneタグ LRU で 72h 未使用削除などポリシー化

※ 空き GB は SSD 容量に合わせてスケール(例:1 TB なら警告を 50 GB へ)。

弱い回線のタイムアウトとレジューム戦略

CI のジョブ timeout と Git/npm 側を入れ子にします(ツール側を長め、CI 外枠で打ち切り)。

レイヤーパラメータ例推奨開始値リトライ退避
Git(HTTP)http.postBufferlowSpeedLimitlowSpeedTime500MB、1000 B/s × 120sジョブ単位 3 回、2n×5s 上限 120s
npmfetch-timeoutfetch-retries120000ms、5fetch-retry-mintimeout 20000ms 程度
HomebrewHOMEBREW_CURL_RETRIES5〜8brew 更新はメンテナンスウィンドウで直列化
CI ジョブstep timeoutプル専用 step 15〜25 分失敗時はキャッシュヒット経路へフォールバック
  • A

    高遅延回線:まず並列度を下げ、git clone --depth 1 とキャッシュ付き fetch に切り替える。

  • B

    断続的切断:ミラー/社内プロキシのキープアライブを確認し、SSH の ControlPersist を併用(プル安定性 FAQ)。

受け入れと監視指標

受け入れの目安はピーク時のプル失敗率P95 壁時計です。

監視 KPI チェックリスト
  • プル系失敗率 < 1%(週次)
  • ディスク 85% 超の継続 < 1h/日
  • キュー P95 がスロットリング前比 +20% 以内
  • await/使用率/失敗率が閾値 3 連続で通知

よくある質問 FAQ

Q. スペックアップで並行プルは無制限?
A. メタデータ I/O が壁になりやすく、CPU だけでは限定的。キューとキャッシュ分離が先です。

Q. 複数リポで npm ci 同時実行は?
A. 同一ディスクは 1〜2。超えるなら別ノードまたはバッチ化。

Q. ポリシーの置き場所は?
A. Runbook と再利用ワークフローに閾値・エスカレーションを明記。

まとめ

共有リモート Macではディスク水位ディスク IOを先に設計し、並行プルキュー深度タイムアウト・リトライを表の初期値から調整するのが近道です。

専用リモート Macでプールを分離し、チームごとにディスクと帯域を確保したい場合は、料金プラン購入ページ(ログイン不要)をご確認ください。契約前の疑問はヘルプセンター、他記事はブログ一覧からどうぞ。

企業ビルドプール向けリモート Mac

安定した並行プル環境をチーム単位で確保

スペックと台数でプールを設計し、CI の再実行と手当てコストを削減。料金・購入・ヘルプはログイン不要です。

24時間以内デリバリー スペック変更可 いつでも解約可