2026 칠곱이십사 배치 공정성
launchd ThrottleInterval·Nice·IO 우선순위로 장기 작업 완료율을 지키는 의사결정 매트릭스와 파라미터 체크리스트
세 가지 제약
- 동일 라벨이 너무 자주 다시 떠 한 사이클이 안 끝남.
- 야간 긴 쓰기와 주간 상시가 디스크만 밀어내 꼬리 지연 증가.
- 워커만 늘려 과구독으로 전체 느려짐.
매트릭스
비용은 노드 전에 간격·나이스·창부터 손봅니다. 같은 증상이면 표의 같은 칸부터 고치면 됩니다.
| 증상 | 먼저 | 다음 |
|---|---|---|
| 자주 재기동 | ThrottleInterval | 쿨다운 파일 |
| 디스크 답답 | 동시 쓰기 줄임 | 낮은 IO·경로 분산 |
| 주간이 밤을 밀음 | Nice 재배치 | 상시 더 낮게 |
체크리스트
| 축 | 감각 | 효과 |
|---|---|---|
| ThrottleInterval | 루프 십초에서 육십초, 폭주형은 백초대 | 재기동 억제 |
| Nice | 밤 영에서 십, 낮 보조 십에서 이십 | 기아 완화 |
| IO 레인 | 큰 순차 쓰기 한 줄기만 겹치지 않게 | 꼬리 지연 감소 |
plist·Nice
셸에서 nice -n 12로 감쌉니다. 맥은 리눅스 ionice가 없으니 동시 쓰기와 달력 간격이 IO 게이트입니다. 래퍼는 사용자 권한과 경로만 맞으면 됩니다.
<key>ThrottleInterval</key><integer>300</integer> <key>ProgramArguments</key><array> <string>/bin/bash</string><string>-lc</string> <string>nice -n 15 /usr/local/bin/your_batch.sh</string> </array>
LowPriorityIO는 버전 확인 후. 감시층은 이 글로 한 겹만.
야간 창
한시에서 다섯시에 무거운 레인을 몰고, 외부 호출은 야간 트리거 글처럼 창 밖 noop. 표는 스케줄 매트릭스와 맞춤.
런북
- 사이클 최소 시간·재시도 이유를 문서화.
- ThrottleInterval은 그보다 짧지 않게, 헬스는 다른 라벨.
- 밤 배치만 Nice 올리고 상시는 더 내림.
- 큰 쓰기는 분 단위로 어긋남.
- 안정 후 규격 검토, 전엔 가격 대비 코어 여유.
인용 세 줄
- 간격: 성공 종료 사이 초 하한.
- CPU: Nice는 이웃과 상대 순위.
- IO: 병렬 쓰기·창이 ionice 대체.
FAQ
디스크냐 CPU냐?
사용률 낮은데 시간만 늘고 쓰기 대기가 붙으면 디스크, 코어만 막히면 CPU.
ThrottleInterval이 길면?
긴 작업을 잘게 쪼개 재기동하면 완료율이 깨짐. 한 번에 길게 도는 모델이 맞음.
저비용 레버?
밤 Nice 열에서 열다섯, 쓰기 한 줄기, 간격을 재시도에 맞춤.