아카이브는 스프린트가 아니라 계절에 지어진다
기가바이트급 수입 물건 열둘의 큐는 하룻밤에 착지할 수 없고, 하려고도 하지 마. 순진한 계획(링크 최대로, 전부 당기고, 자기)은 현실과 접촉하며 실패해: 가정은 네트워크를 공유하고, 오래 포화된 전송은 자기 중단률을 올리고, 자원을 독점하는 폭발은 눈에 띄어 — 그리고 뽑혀. 아카이브의 계획은 수집을 속도가 조절되고, 예산이 붙고, 며칠에 걸친 캠페인으로 다뤄.
캠페인을 정의하는 두 노브:
- 속도 상한 — 링크 천장의 검소한 비율(몇 MB/s가 흔한 아카이브 음역대야). 천장 아래에서는 중단이 드물고, 이어받기가 싸게 유지되고, 네트워크를 공유하는 나머지 전부가 계속 쓸 만해. 전송이 가구가 돼: 있고, 조용하고, 무시 가능하게.
- 일일 예산 — 하루당 총 바이트 허용량(150 GB가 그럴듯한 가정 규모야), 재설정 경계와 함께. 예산은 어느 한 탐욕적인 하루가 저장소와 네트워크가 하는 나머지 전부를 밀어내지 못 하게 하고, 캠페인 산수를 정직하게 만들어: 예산에서는 1 TB 수집이 캠페인 날 기준 이레쯤이야 — 발견하는 게 아니라 계획할 수 있지.
함께 그들은 실패 프로파일을 바꿔: 방해받으면 안 되는 하나의 영웅적 전송 대신, 설계상 중단을 견디는 조용한 세션들의 연속. 인내는 야망의 부재가 아니야 — 야망에 속도를 매겨서 일주일을 살아남게 하는 거지.
계획 산수
노브가 정해지면 캠페인 계획은 머릿속으로 되는 정직한 산수야:
days = ceil(총_바이트 / 일일_예산)
그리고 파일당: hours ≈ 파일_바이트 / (속도_상한 × 3600). 2 MB/s에서 17 GB 샤드는 약 2.4시간. 1.5 MB/s에서 34 GB는 약 6.3시간. 그 숫자들이 예약하는 큐와 기습하는 큐의 차이야. 그리고 수집 우선순위에 먹여: 예산이 직렬화를 강제하면, 큐 순서를 장작더미의 이유로 매겨 — vessel 의존 먼저, 그냥 존중은 나중에.
예의는 기계적인 면이 있다
천장 아래에서 돌고 재시도 백오프를 존중하는 건, 당기는 출처의 좋은 시민이 되게도 해줘: 허브 쪽의 레이트 리미터는 폭발적인 행동에 반응하고, 이어받기가 있는 속도 조절된 클라이언트는 거의 만나지 않지. 아카이브의 인내와 출처의 인내가 결국 같은 엔지니어링인 거야.