Autor:
Shannon Kurtas, professionaalse ja institutsionaalse kauplemise tootedirektor
Max Kaplan, vanem infrastruktuuri- ja andmetehnoloogia inseneridirektor
Suketu Gandhi, vanem kaubandustehnoloogia inseneridirektor
Steve Hunt, inseneri asepresident
Ligi kaksteist aastat tagasi alustas Kraken oma teedrajavat missiooni, et saada üheks esimeseks ja edukaimaks digitaalsete varade börsiks. Alustasime kauplemist vaid nelja krüptovaluutaga, kuid nüüd toetame üle 220 vara 67 plokiahelas ja enam kui 700 turul.
Oleme kiiresti kasvanud. Tänu meie toote- ja insenerimeeskondadele – sealhulgas plokiahela tehnoloogia, turvalisuse, võrgunduse, infrastruktuuri ja kauplemissüsteemide eksperdid – oleme suutnud tohutu nõudlusega sammu pidada.
Kuna tööstus on küpsenud ja arenenud, on muutunud ka meie kliendibaasi suurus ja olemus. Samal ajal kui me jätkame üksikute investorite ja kauplejate teenindamist meie kaudu Kraken ja KrakenPro platvormide kaudu saabub järjest suurem osa meie tellimuste voost algoritmiliselt meie API professionaalsetelt ja institutsionaalsetelt klientidelt. Nende hulka kuuluvad ettevõtted, riskifondid, omanduses olevad kauplemisettevõtted, peamised maaklerid, fintechid ja muud Krakeni sügavale likviidsusele tuginevad börsid.
Meie kauplemissüsteemid on pidanud nende suurenenud nõudmiste täitmiseks skaleerima, eriti nende puhul, mis sõltuvad suuresti kiirusest, stabiilsusest ja tööajast, et parandada täitmiskulusid, hallata tururiski ja kasutada kauplemisvõimalusi. Me saavutasime selle kõik, tegemata järeleandmisi oma prioriteedis number üks - turvalisus.
Täna on meil hea meel rõhutada mõningaid meie hiljutisi jõupingutusi, edusamme ja selle skaleerimise tulemusi.
Esituse ülimuslikkus
Paneme suurt rõhku instrumenteerimiskoodile, et jälgida ja mõista oma süsteemi jõudlust rasketes reaalsetes tingimustes. Kasutame ka konkurentsivõimelist võrdlusuuringut, et teha kindlaks, kuidas aja jooksul edeneb. Uurime mõnda neist tulemustest.
Kiirus ja latentsus
Mõõdame kauplemiskiirust latentsusaja vormis. Latentsus on edasi-tagasi viivitus ja me defineerime selle kui ajavahemikku, mis jääb kliendisüsteemide poolt kauplemistaotluse (nt lisakorralduse) saatmise ja börsi poolt selle kinnitamise vahele.
Erinevalt traditsioonilistest börsidest on krüptokohad üldiselt geograafiliselt vähem kontsentreeritud ega paku täielikku paigutust. Paljudel juhtudel on need täielikult pilvepõhised.
Latentsustundlikud kliendid juurutavad koodi kõikjal, kus see on toimumiskohale füüsiliselt kõige lähemal. Seetõttu hõlmab õiglane võrdlus latentsuse mõõtmist selle konkreetse koha jaoks kõige asjakohasemast piirkonnast.
Latentsus varieerub ka kauplemistaotluste lõikes, isegi püsiva ühenduse korral ühe kliendi ja börsi vahel. Selle põhjuseks on nii Interneti-põhise kauplemise erinevused ja varieeruvus, kui ka börsi koormuse käsitlemine. Seetõttu peame latentsusaega arutama pigem protsentiilide kui üksikute arvudena. Näiteks P25 latentsus viitab 25. protsendi latentsusele. Teisisõnu tähendab 25 ms P5, et 25% kõigist kauplemistaotlustest antud proovivõtuaja jooksul oli latentsusaeg 5 ms või parem.
Siin näete eelmise kuu algtaseme mõõtmise käigus Krakeni parimat tee P25 latentsust võrreldes mõne meie parima konkurendiga erinevates piirkondades, mis on asukoha järgi normaliseeritud.
Meie algtaseme edasi-tagasi reisi latentsusaeg (umbes 2.5 ms) on 97. aasta esimese kvartaliga võrreldes 1% parem.
Stabiilsus
Nagu varem mainitud, on tegelik jõudlus suure koormuse korral sama oluline, kui mitte olulisem, kui parimal juhul jõudlus ja absoluutse latentsusaja näitajad.
Täitmiskulude parandamine, libisemise vähendamine ja tururiski juhtimine sõltuvad kulude minimeerimisest varieeruvus latentsusaeg iga kauplemistaotluse vahel. Nimetame seda varieeruvuse värinat ja mõõdame erinevust erinevate latentsusprotsentiili näitajate vahel sama valimi võtmise aja jooksul.
Mõõtes värinat P25 ja P95 latentsusaegadega, saame jäädvustada märkimisväärse ulatuse jõudlust ja aja jooksul täheldatud käitumist. Näiteks mõõtsime 5.–12. novembril 2022, kuidas meie värinad suurenesid suurema hulga parimate konkurentidega XNUMX.–XNUMX. novembril XNUMX, mil turu volatiilsus oli FTX-i hädade ja lõpliku seiskumise tõttu terav.
Siit näete, kuidas meie kauplemisinfrastruktuur käitus erakordselt hästi, hoolimata järsult suurenenud volatiilsusest ja koormusest. Nädala jooksul ei ületanud see värin kordagi 30 ms. Samal ajal ulatus see paljude teiste vahetuste puhul regulaarselt mitmesaja millisekundini või päringud aegusid täielikult, nagu näitavad vertikaalsed naelu.
Läbilaskevõime
Läbilaskevõime peegeldab edukate kauplemistaotluste arvu (tellimuse lisamine, tellimuse tühistamine, korralduse muutmine jne), mida börs teatud aja jooksul käsitleb.
Sarnaselt latentsusele käsitleme läbilaskevõimet kas teoreetiliselt või vaadeldavalt.
Vaadeldud läbilaskevõime on asjakohasem, kuna see peegeldab paljusid omavahel seotud tegureid, sealhulgas kiiruspiiranguid. Seadsime need piirangud DDoS-i rünnakute vältimiseks ja liikluse mugavaks hoidmiseks teoreetilistes piirides. Kliendibaasi suurus, üldine turunõudlus, tellimuste voog (mida mõjutavad tugevalt hindade kõikumine ja kauplemisaktiivsus mujal) ja jõudlus koormuse all (kuna pärast teatud teenuse halvenemise taset hakkavad kliendid oma taotlusi piirama) need piirid.
Siin oleme illustreerinud meie maksimaalse vaadeldava läbilaskevõime üle 4-kordset paranemist ajavahemikus 1. aasta 2021. kvartal kuni 1. aasta 2023. kvartal. See muudatus on liikumine 250 1 päringult minutis üle XNUMX mm päringu minutis ning selle taseme ja meie dramaatiliselt on jäänud märkimisväärne vaba ruumi. paranenud teoreetiline maksimaalne läbilaskevõime.
Töö kestvus
Sel aastal tegime jõupingutusi, et minimeerida planeeritud hooldusest tingitud seisakuid, vähendada planeerimata seisakute sagedust ja mõju ning suurendada funktsioonide värskenduste ja jõudluse parandamise kiirust ilma tööaega negatiivselt mõjutamata.
Need muudatused hõlmasid nii tehnilisi kui ka operatiivseid täiustusi, nagu näiteks järjest küpsemaks muutuv ja suurem töökindluse meeskond, mis töötab ööpäevaringselt.
Kuigi meie 2021. aasta halvima kuu tööaeg oli peaaegu 99%, on need täiustused võimaldanud meil seada üha agressiivsemad veaeelarved ja kauplemise eesmärgi 99.9+%.
Pingutused
Sinine/roheline ja veerevad juurutused
Oleme üha enam kasutanud a sinine/roheline kasutuselevõtustrateegia meie API lüüsides ja paljudes siseteenustes. Näete selle väga lihtsustatud illustratsiooni, mis on esile tõstetud joonisel 6. Kui kasutame paralleelselt mitut täisväärtuslikku koodipakki, saame funktsioone juurutada, häirimata peamist pinu, mis praegu kliendiliiklust vastu võtab. Hiljem saab liikluse suunata ümber uude virna, mis viib mõjuvaba juurutamiseni või väga kiire tagasipööramise protseduurini, kui midagi peaks valesti minema. Lisaks sellele toimub meie paljude teenuste puhul, mis kasutavad koormuse tasakaalustamiseks mitut eksemplari, nende eksemplaride värskendused pigem jooksvalt kui kõik või mitte ühtegi. Need lähenemisviisid võimaldavad meil enamus meie tehnikakogumeid ilma mõjuta ja sagedamini värskendada.
Infrastruktuur koodina
Kraken kasutab tugevalt finantsvõimendust Infrastruktuur kui kood (IaC) koos Terraform ja Nomaad, suures osas selleks, et tagada kogu koodi juurutamise järjepidevus ja korratavus. Automatiseerime oma Terraformi hoidlad pideva integreerimise ja pideva tarnimisega, et saaksime muudatusi kiiresti ja usaldusväärselt kasutusele võtta. Viimase kahe aasta jooksul oleme juurutanud uut infrastruktuuri, kasutades IaC-d ja peaaegu kogu meie tänane infrastruktuur kasutab seda mustrit. See samm oli oluline verstapost ja me võimendame IaC-d nii pilvepõhiste kui ka kohapealsete rakenduste jaoks.
Ühenduvus ja võrgundus
Me võimendame privaatset ühenduvust AWS-i ja meie kohapealsete andmekeskuste vahel. See ühenduvus võimaldab Krakenil tagada, et meil on võimalikult väike latentsusaeg, kõrgeim võimalik turvalisus ja üleliigsed teed, et saaksime alati AWS-iga ühendust võtta. Hiljutised võrgunduse ja marsruutimise täiustused on võimaldanud olulise osa ülaltoodud edasi-tagasi kauplemise latentsusaja vähendamisest.
Mõõteriistad ja telemeetria
Täpne ja täpne logimine, mõõdikud ja taotluste jälgimine on võimaldanud meil kiiresti tuvastada, diagnoosida ja lahendada kõik ootamatud kitsaskohad ja jõudlusprobleemid reaalajas. Lisaks sellele telemeetriale ja meie enda konkurentsi jälgimisele värskendasime hiljuti ka oma API latentsus- ja tööaja mõõdikuid status.kraken.com välise monitori juurutustega, et üldiselt paremini kajastada neid numbreid vastavalt klientide kogemustele.
Optimeeritud API juurutused
Meie API-d ja kauplemispinn toetavad igal ajahetkel kümneid tuhandeid ühendusi, mis kauplevad algoritmiliselt meie veebisockettide või REST API-de kaudu. Veel sadu tuhandeid ühendusi tulevad meie kasutajaliidese platvormidelt, sealhulgas meie uus suure jõudlusega platvorm KrakenPro platvorm. Kuigi need platvormid saavad palju selles postituses kirjeldatud põhilise kauplemise infrastruktuuri eeliseid, on töökoormused põhimõtteliselt erinevad ja nende nõuded on erinevad. Eritellimusel API juurutamine meie kasutajaliidese platvormide toetamiseks konkreetsete andmevoogude, tihendamise, piiramise, koondamise jne abil on võimaldanud meil veelgi parandada kiirust ja vähendada raisatud ribalaiust ning seega suurendada kliendi üldist võimsust.
Põhikoodi täiustused
Oleme põhiteenuste ümberkorraldamise kaudu teinud kogu virnas mitmeid täiendavaid dramaatilisi täiustusi Rust ja C++. Need muudatused kasutavad võimaluse korral rohkem asünkroonset sõnumivahetust ja andmete püsivust ning aitavad meil luua tugeva jõudlusprofiili rohkematesse meie CI/CD-konveieritesse. Need võimaldavad meil kasutada ka tuntumaid meetodeid staatilise ja dünaamilise koodi analüüsiks. Mitmed neist täiustustest on tipnenud sellega, et sobiva mootori keskmine latentsusaeg on langenud millisekunditelt mikrosekundit. See on enam kui 90% parem kui kaks aastat varem, toetades samal ajal üle 4-kordse läbilaskevõimet.
Mis järgmiseks?
Native FIX API
Samuti laseme peagi turule oma loomuliku FIX API-liidese hetketurgude andmete ja kauplemise jaoks. FIX, mis tähendab finantsteabe vahetust, on võimas ja kõikehõlmav, kuid paindlik tööstusstandardile vastav API, mida paljud asutused kasutavad laialdaselt aktsiate, FX-i ja fikseeritud tuluga kauplemiseks. See on usaldusväärne ja lahingutes testitud protokoll, millel on lai kolmanda osapoole tarkvara ja avatud lähtekoodiga tugi, mis muudab asutuste jaoks Krakeniga integreerimise ja kauplemise alustamise lihtsamaks ja kiiremaks.
Krakeni algsel FIX API-l on ka arhitektuursed nüansid ja eelised võrreldes meie veebisockettide ja REST API-dega, sealhulgas seansipõhine katkestamine lahtiühendamisel, garanteeritud tellimuses sõnumite edastamine, seansi taastamine ja taasesitus. Meie FIX API on praegu beetatestimisel — sirutama kui tahad aidata rehve lüüa!
Null seisakuaega sobiva mootori kasutuselevõtt
Oleme teinud märkimisväärset edu API-lüüside ja erinevate taustateenuste (autentimine, audit, telemeetria jne) mõjuvaba juurutamise sageduse osas. Meie sobiva mootori olulised uuendused nõuavad siiski ajakavalist hooldust ja lühikest seisakut, mida teostame ligikaudu kaks korda nädalas.
Kuid meie meeskond tegi märkimisväärseid jõupingutusi, et mõned meie sisemised sõnumisüsteemid multiedastustehnoloogiaga ümber kujundada, kasutades Aeron, äärmiselt tõhus ja vastupidav tööriistade komplekt tõrketaluvusega kõrge kättesaadavusega süsteemide jaoks. Selle tulemuseks on nullseisakuta plaanitud juurutused kogu kauplemispaki ulatuses, mis on saadaval hiljem 2023. aastal.
Abi vajama? Siruta käsi
Võtke ühendust meie kontohalduse ja institutsionaalse müügimeeskonnaga, kasutades e-posti aadressi et saada lisateavet nende värskenduste kohta, arutada kauplemisühenduvuse optimeerimise või tulevaste funktsioonide (nt meie FIX API) beetatestimist.
Kas vajate rohkem tõendeid? Hoidke silma peal ja tellige värskendused status.kraken.com mis tahes kavandatud hoolduse, teenindusteabe ning latentsus- ja tööaja statistika jaoks.
- SEO-põhise sisu ja PR-levi. Võimenduge juba täna.
- Platoblockchain. Web3 metaversiooni intelligentsus. Täiustatud teadmised. Juurdepääs siia.
- Allikas: https://blog.kraken.com/post/17936/performance-at-kraken/
- :on
- $ UP
- 2021
- 2022
- 2023
- 250K
- 67
- 7
- 9
- a
- Võimalik
- MEIST
- üle
- absoluutne
- konto
- konto haldamine
- täpne
- täpselt
- saavutada
- üle
- tegevus
- aadress
- mõjutada
- koondamine
- agressiivne
- algoritmiliselt
- Materjal: BPA ja flataatide vaba plastik
- võimaldab
- summa
- analüüs
- ja
- API
- API-liidesed
- rakendused
- lähenemisviisid
- arhitektuuri-
- OLEME
- Saabuvad
- AS
- eelis
- vara
- At
- Reageerib
- audit
- Autentimine
- automatiseerima
- kättesaadavus
- saadaval
- keskmine
- AWS
- Taustaprogramm
- Bandwidth
- baas
- Baseline
- alus
- BE
- muutuma
- enne
- hakkas
- alustama
- on
- võrdlusuuringud
- Kasu
- BEST
- beeta
- Parem
- vahel
- Peale
- blockchain
- Plokkheli tehnoloogia
- plokiahelad
- lai
- laiem
- maaklerid
- eelarvekomisjoni
- ehitama
- by
- C + +
- helistama
- CAN
- Võimsus
- kapitaliseerima
- lüüa
- viima
- juhul
- juhtudel
- Centers
- kindel
- muutma
- Vaidluste lahendamine
- Joonis
- klient
- kliendid
- lähedal
- kood
- Tulema
- võrdlus
- konkurentsivõimeline
- konkurendid
- terviklik
- kompromiteeriv
- Keskendunud
- Tingimused
- Läbi viima
- Kinnitama
- ühendus
- Side
- Side
- jätkama
- pidev
- tuum
- Korporatsioonid
- Maksma
- kulud
- krüpto
- cryptocurrencies
- Praegu
- andmed
- andmekeskuste
- DDoS
- kümme aastat
- sügav
- viivitus
- rõõmus
- tarne
- Nõudlus
- nõudmisi
- sõltub
- juurutada
- lähetatud
- kasutuselevõtu
- kasutuselevõtt
- kirjeldatud
- Vaatamata
- DID
- erinevus
- erinevused
- erinev
- digitaalne
- Digitaalne vara
- Juhataja
- arutama
- distress
- Ära
- seisakuaeg
- dramaatiliselt
- dramaatiliselt
- Kukkumine
- ajal
- dünaamiline
- e
- iga
- lihtsam
- jõupingutusi
- jõupingutusi
- kumbki
- mujal
- rõhk
- lubatud
- Mootor
- Inseneriteadus
- täielikult
- Aktsiad
- viga
- jms
- Isegi
- arenenud
- näide
- ületama
- vahetamine
- Vahetused
- täitmine
- kogenud
- ekspertide
- uurima
- väline
- äärmiselt
- silm
- tegurid
- õiglane
- tunnusjoon
- FUNKTSIOONID
- Joonis
- arvandmed
- finants-
- finantsinfo
- fintechs
- ettevõtetele
- esimene
- Määrama
- fikseeritud
- fikseeritud sissetulek
- paindlik
- voog
- eest
- vorm
- eelseisev
- FRAME
- Sagedus
- sage
- Alates
- FTX
- täis
- põhimõtteliselt
- raha
- edasi
- Pealegi
- FX
- Üldine
- üldiselt
- antud
- Go
- Kasvavad
- kasvanud
- Kasv
- garantii
- tagatud
- Käsitsemine
- juhtuda
- Olema
- kõrgus
- tugevalt
- raske
- hekk
- riskifondid
- aitama
- Suur
- kõrgeim
- Esile tõstma
- Esiletõstetud
- Kuidas
- Kuidas
- HTTPS
- sajad
- identifitseerima
- mõju
- mõjutatud
- oluline
- parandama
- paranenud
- paranemine
- parandusi
- in
- Teistes
- sisaldama
- lisatud
- hõlmab
- Kaasa arvatud
- tulu
- Suurendama
- kasvanud
- kasvav
- üha rohkem
- osutatud
- eraldi
- tööstus
- info
- Infrastruktuur
- Institutsionaalne
- institutsionaalsed kliendid
- institutsioonid
- integreerima
- integratsioon
- sisemine
- Interneti-põhine
- Investorid
- küsimustes
- IT
- ITS
- hoidma
- lüüa
- teatud
- Kraken
- suur
- viimane
- Hilinemine
- käivitamine
- juhtivate
- Õppida
- Lets
- Tase
- Finantsvõimendus
- nagu
- piirid
- Likviidsus
- koormus
- liising
- tehtud
- põhiline
- hooldus
- peamine
- Enamus
- tegema
- Tegemine
- juhtima
- juhtimine
- juhtiv
- palju
- Turg
- Turuinfo
- Turu volatiilsus
- turud
- suur
- sobitamine
- materjal
- küps
- max laiuse
- maksimaalne
- vahendid
- Vahepeal
- mõõtma
- mõõtmine
- Vastama
- mainitud
- sõnum
- Sõnumid
- meetodid
- Meetrika
- teetähis
- minimeerimine
- miinimum
- missioon
- hetk
- Jälgida
- järelevalve
- kuu
- rohkem
- kõige
- liikuma
- MS
- mitmekordne
- emakeelena
- loodus
- peaaegu
- negatiivselt
- võrgustike loomine
- Uus
- järgmine
- November
- number
- numbrid
- of
- pakkuma
- on
- ONE
- avatud
- avatud lähtekoodiga
- töötama
- tegutseb
- tegutsevad
- töökorras
- operatiivne vastupidavus
- Võimalused
- optimeerima
- et
- Muu
- üldine
- enda
- Parallel
- osa
- eriti
- partei
- minevik
- tee
- Muster
- jõudlus
- püsivus
- Füüsiliselt
- Pioneer
- plaanitud
- inimesele
- Platvormid
- Platon
- Platoni andmete intelligentsus
- PlatoData
- Punkt
- võimalik
- post
- võimas
- vältida
- hind
- Peamine
- Eelnev
- prioriteet
- era-
- Pro
- Toode
- professionaalne
- profiilide
- tõend
- varaline
- kaitstud
- protokoll
- eesmärkidel
- panema
- Q1
- Kiire
- kiiremini
- kiiresti
- valik
- määr
- pigem
- jõudma
- jõudis
- päris maailm
- reaalajas
- vastuvõtmine
- hiljuti
- hiljuti
- taastumine
- vähendama
- vähendamine
- viitab
- kajastama
- peegeldab
- piirkond
- piirkondades
- regulaarselt
- asjakohane
- esindab
- taotleda
- Taotlusi
- nõudma
- Nõuded
- vastupidavust
- REST
- kaasa
- Tulemused
- Oht
- jõuline
- Rull
- Rolling
- ligikaudu
- müük
- sama
- Skaala
- ketendamine
- planeerimine
- turvalisus
- Seeria
- teenima
- teenus
- Teenused
- istung
- komplekt
- mitu
- peaks
- seiskamine
- märkimisväärne
- lihtsustatud
- alates
- ühekordne
- SUURUS
- mahajäämus
- So
- tarkvara
- mõned
- allikas
- konkreetse
- kiirus
- naelu
- Kaubandus-
- kiirturg
- Stabiilsus
- Kestab
- laotud
- Hoidla
- seisab
- algus
- alustatud
- statistika
- Veel
- tellima
- edukas
- selline
- komplekt
- toetama
- Toetamine
- süsteem
- süsteemid
- sihtmärk
- meeskond
- meeskonnad
- tech
- Tehniline
- Tehnoloogia
- tingimused
- Terraform
- test
- Testimine
- tänan
- et
- .
- oma
- teoreetiline
- seetõttu
- Need
- Kolmas
- tuhandeid
- Läbi
- läbilaskevõime
- aeg
- Ajaseeria
- Ajastatud
- korda
- et
- täna
- töövahendid
- ülemine
- Jälgimine
- Ettevõtjad
- Kauplemine
- traditsiooniline
- liiklus
- Usaldatud
- ui
- lõplik
- all
- mõistma
- Ootamatu
- ajakohastatud
- Uudised
- töö kestvus
- us
- kasutama
- eri
- suur
- VeloCity
- Tegevuskoht
- juhtumused
- Versus
- kaudu
- Lenduvus
- vs
- Watch
- nädal
- Hästi
- mis
- kuigi
- will
- koos
- jooksul
- ilma
- sõnad
- halvim
- oleks
- Vale
- aasta
- aastat
- sa
- Sinu
- sephyrnet