ToolPick LabAI/AX Daily Radar
해외 · 공식 · GitHub Blog

2026. 10. 22. 오전 1:00 · 에이전트 · 78점 · 본문 일부 기반

The bridge to agent-scale Git infrastructure

GitHub는 급증하는 트래픽과 데이터 센터 전력 한계에 대응하여 전체 저장소의 대부분을 Azure로 이전했으며, 남은 대규모 저장소 이전을 위해 쓰기 직렬화 범위를 저장소 전체에서 개별 참조(reference) 단위로 변경하고 있습니다. 이를 통해 서로 다른 브랜치에 대한 쓰기 작업이 독립적으로 처리되어 지연 시간이 줄어듭니다. 또한 저장소 데이터가 객체 스토리지에 영구 저장됨에 따라 읽기와 쓰기 연산을 분리하여 각각 독립적으로 확장할 수 있는 기반을 마련하고 있습니다.

핵심 요약

GitHub 블로그 'The bridge to agent-scale Git infrastructure'에 따르면, 지난 1년 동안 Git 트래픽이 급증하고 자체 데이터 센터의 전력 용량 및 지리적 한계에 부딪히면서 99.99999%에 달하는 Git 저장소의 복제본이 자체 데이터 센터와 Azure 양쪽에 공존하게 되었습니다. 이 과정에서 데이터 센터와 Azure 간의 약 25ms에 달하는 왕복 지연 시간(round trip)과 기존 저장소 단위 쿼럼(quorum) 방식의 한계로 인해 가장 바쁜 잔여 저장소들의 이전이 지연되었습니다. 기존 구조에서는 쿼럼이 쓰기 작업을 수행할 때 저장소 전체에 락(lock)을 걸고 가장 느린 건강한 복제본의 응답을 기다리기 때문에, 네트워크 거리가 멀어지면 쓰기 처리량 한계가 급격히 떨어지는 문제가 있었습니다. GitHub는 첫 번째 원칙인 '조율 최소화(minimize coordination)'를 적용하여 저장소 단위의 락과 쿼럼 대신 개별 참조(reference) 단위로 직렬화 범위를 변경했습니다. 이에 따라 서로 다른 레퍼런스(예: 개발자와 에이전트들이 각자의 브랜치에 푸시하는 경우)에 대한 쓰기 작업은 서로 대기하지 않고 동시에 진행될 수 있게 되며, 내부 테스트 결과 서로 다른 레퍼런스에 대한 쓰기 처리량이 3~4배 향상되고 지연 시간이 감소했습니다. 두 번째 원칙인 '저장소와 컴퓨팅의 분리(decouple storage from compute)' 측면에서는, 읽기와 쓰기가 동일한 복제본을 공유하여 자원을 경쟁하던 문제를 해결하기 위해 Azure Blob Storage를 활용합니다. 객체 스토리지를 쿼럼의 가상 복제본(virtual replica)으로 참여시켜 쓰기 작업을 객체 스토리지에 스트리밍하는 방식으로 내구성을 확보하고, 향후 읽기 트래픽과 쓰기 컴퓨팅 자원을 독립적으로 확장할 수 있는 기반을 구축하고 있습니다.

무엇이 바뀌었나

  • 저장소의 99.99999% 이상이 자체 데이터 센터와 Azure에 분산되어 마이그레이션 진행
  • 쿼럼 직렬화 범위를 저장소 전체 락에서 개별 참조(per-reference) 단위로 변경
  • 서로 다른 브랜치 및 레퍼런스에 대한 쓰기 작업이 독립적으로 수행되어 처리량 3~4배 향상
  • Azure Blob Storage를 쿼럼의 가상 복제본으로 활용하여 읽기와 쓰기 연산의 독립적 확장 기반 마련

누가 봐야 하나

Git 인프라 아키텍트, 대규모 분산 시스템 엔지니어, DevOps 플랫폼 엔지니어

원문에서 확인할 것

  • 참조별 쿼럼(per-reference quorum)이 실제 프로덕션 환경의 모든 대형 저장소에서 동일한 성능 이점을 제공하는지 여부
  • 가상 복제본 노드가 객체 스토리지와 연동될 때 쓰기 지연 시간과 내구성 보장 메커니즘의 세부 사항
  • 남은 0.00001%의 대형 저장소 마이그레이션이 완전히 완료되는 시점과 부하 분산 결과

출처·한계

출처 블로그 본문이 중간에 끊어져 있어 객체 스토리지 연동 이후의 전체 읽기 확장 아키텍처 세부 사항은 확인되지 않습니다. 발행·수집 기준 시각은 2026. 10. 22. 오전 1:00입니다.

Source First

전문은 원문에서 확인합니다

이 페이지는 원문을 대체하지 않도록 짧은 요약과 판단 근거만 보여줍니다. 전체 맥락과 세부 조건은 원문 링크에서 확인하세요.