A Coinbase escalou nosso serviço de Usuários para sustentar mais de 1,5 milhão de leituras de identidade por segundo. Veja como: - Dividimos o objeto monolítico do usuário em grupos independentes e lógicos chamados "Fragmentos." - Migrou de um único cluster MongoDB para um sistema federado usando tanto MongoDB quanto DynamoDB. - Para escritas concorrentes, implementamos o Controle de Concorrência Otimista (OCC), que usa um campo de versão de recurso para comparar e trocar na escrita, evitando bloqueios globais lentos. - Para garantias fortes de leitura após gravação em fluxos críticos, usamos "Tokens de Frescura." Esses tokens são passados na requisição de leitura para garantir que os dados retornados sejam pelo menos tão frescos quanto a versão associada ao token, contornando o cache se necessário. - Introduzimos um mecanismo de corte de carga que desvia dinamicamente uma parte do tráfego recebido para um grupo-alvo fictício quando o serviço detecta sobrecarga, prevenindo um ciclo de morte do MongoDB e permitindo que o serviço se degrade de forma gradual. Essa arquitetura nos dá a escalabilidade para lidar com os picos massivos e imprevisíveis do mercado cripto e a resiliência para ser um serviço que a Coinbase pode construir com confiança.