GitHub Engineering · Karthik Raman, Brian Celenza ·
Inside GitHub's new Git storage architecture
GitHub presenta una arquitectura de almacenamiento de Git diseñada para admitir miles de escrituras por segundo en un solo repositorio, sin cambiar la forma en que los desarrolladores usan Git. El diseño guarda los objetos inmutables en Azure Blob Storage y usa Ref-CAS, un servicio de registro replicado, para ordenar las actualizaciones de referencias; así, las escrituras pueden avanzar en paralelo y las lecturas sin cambios requieren una comprobación breve. Réplicas virtuales atienden las solicitudes mientras nodos de compaction independientes mantienen los packs, y pruebas internas alcanzaron 7.200 pushes por segundo con 5.000 agentes concurrentes.
GitHub's new Git storage architecture is built so thousands of agents can push to a single repository at once. Here's how it works.