Coinbase skaalasi käyttäjäpalvelunsa ylläpitämään yli 1,5 miljoonaa identiteettilukua sekunnissa. Näin näin: - Jaoimme monoliittisen käyttäjäobjektin itsenäisiin, loogisiin ryhmiin, joita kutsutaan "fragmenteiksi". - Siirretty yhdestä MongoDB-klusterista federoituun järjestelmään käyttäen sekä MongoDB:tä että DynamoDB:tä. - Samanaikaisissa kirjoituksissa toteutimme Optimistic Concurrency Controlin (OCC), joka käyttää resurssiversiokenttää vertailemaan ja vaihtamaan kirjoituksen yhteydessä, välttäen hitaita globaaleja lukkoja. - Vahvoihin lukujälki-kirjoitustakuuihin kriittisissä virroissa käytämme "Freshness Tokens" -tokeneita. Nämä tokenit välitetään lukupyynnössä, jotta palautettu data on vähintään yhtä tuoreena kuin tokeniin liitetty versio, ja tarvittaessa välimuisti ohitetaan myös. - Otimme käyttöön kuormankatkomekanismin, joka dynaamisesti ohjaa osan saapuvasta liikenteestä vale-kohderyhmälle, kun palvelu havaitsee ylikuormituksen, estäen MongoDB:n kuolemankierron ja mahdollistaen palvelun arvokkaan heikkenemisen. Tämä arkkitehtuuri antaa meille skaalautuvuuden käsitellä kryptomarkkinoiden valtavia, arvaamattomia huippuja sekä kestävyyttä olla palvelu, jonka varaan Coinbase voi rakentaa luottamuksella.