A Cursor desenvolveu o Continuity, arquitetura de armazenamento Git que usa um write-ahead log no Amazon S3 como fonte da verdade, alcançando mais de 300 pushes por segundo e escalabilidade linear de leitura com até 100 réplicas em testes sintéticos.
- Continuity usa um WAL no S3 como fonte da verdade, em vez de coordenação entre réplicas, tratando NVMe local como cache quente.
- A Cursor reporta até 120 pushes por segundo com S3 Standard e mais de 300 com S3 Express One Zone no monorepo everysphere.
- Leituras condicionais no S3 levam menos de 10 milissegundos em média, e gossip em UDP propaga atualizações do WAL sem afetar a corretude.
- Casey Lee, CTO da Liatrio e ex-AWS, ressaltou que os números de desempenho ainda não foram verificados de forma independente.
- Apenas o primário executa compactação Git, com réplicas baixando os packs do S3, trocando banda por CPU.
O que é a arquitetura continuity e como ela escala git
Continuity é uma arquitetura de storage Git que transforma um WAL apoiado em S3 na fonte durável da verdade, tratando repositórios locais em NVMe como caches quentes.
O modelo tradicional, como a arquitetura Spokes do GitHub, depende de réplicas NVMe e three-phase commit, cujo custo de coordenação cresce com o número de réplicas.
Nós locais como cache e propagação via gossip
Vicent Martí, da Cursor, descreveu os repositórios NVMe locais como caches quentes, com rendezvous hashing e compare and swap atômico no S3.
Gossip em UDP propaga atualizações do WAL, e leituras condicionais no S3 levam menos de 10 ms em média.
# publicidade
Números de desempenho e trade-offs
Testes sintéticos no monorepo everysphere registraram até 120 pushes por segundo com S3 Standard e mais de 300 com S3 Express One Zone.
| Métrica | S3 Standard | S3 Express One Zone |
|---|---|---|
| Pushes por segundo (teste sintético) | até 120 | mais de 300 |
| Leituras condicionais no S3 | menos de 10 ms em média | menos de 10 ms em média |
| Escalabilidade de leitura | linear com até 100 réplicas | linear com até 100 réplicas |
| Gargalo na taxa mais alta | compactação Git | compactação Git |
Arraste para o lado para ver toda a tabela.
Na taxa mais alta, a compactação Git virou o gargalo; apenas o primário compacta, e as réplicas baixam os packs do S3.
Leia também:
Fonte: Infoq