Kihlveosüsteemid töötavad suure koormusega ja vajavad kiiret andmetöötlust: reaalajas tuleb sünkroniseerida kihlveod, voogedastusüritused, arvutused ja liides. Seetõttu mängivad arhitektuuris võtmerolli välimussüsteemid (Redis) ja sõnumivahendajad (Kafka, RabbitMQ). Need pakuvad kiirust, stabiilsust ja skaleeritavust, mis on gameplay jaoks kriitilise tähtsusega.
Miks vajad kihlvedudes vahemälu
Redist kasutatakse mälusalvestusena:- Vaheseinad, koefitsiendid, sündmuse staatus
- TTL andmete salvestamine (kihlveo ajastid, live uuendused)
- Kiire juurdepääs kasutaja istungitele, ostukorvid, lood
- Määrade piiramine, kihlvedude piirmäärad, pettusevastane tegevus
- Puhverdamine aeglaste aluste ja liidese vahel
Redist kasutatakse pubi/alamrežiimis kiirhoiatuste puhul mikroserverite vahel.
Mida sõnumi vahendajad teevad
Kafka ja RabbitMQ haldavad andmevoogusid mikroserverite ja väliste pakkujate vahel:| Kasutusjuhend | Kafka | Küülik MQ |
|---|---|---|
| Spordiürituste voog | Suur läbilaskevõime | Mahtude piirang |
| Koefitsientide ajakohastamine | Suurepärane | Sobivad järjekordadeks |
| Teated, hoiatusteated | Ülemäära | Täiuslik lihtsates stsenaariumides |
| Analüüs ja metsaraie | Streaming at LiveHouse | Parem Kafka või logi kogujad |
Kafka vs RabbitMQ - valik sõltub ülesandest
| Kriteerium | Kafka | Küülik MQ |
|---|---|---|
| Läbilaskevõime | Väga kõrge (mln msg/s) | Keskmine |
| Tellimus ja tellimus | Garanteeritud | Seda toetatakse |
| Sõnumi salvestamine | Pikaajaline (kettal) | Lühiajaline (mälu/ketas) |
| Koormuse juhtimine | Suurepäraselt skaleeritav | Lihtne paigaldada ja seadistada |
| Täiuslik | Niidid, logid, reaalajas API | Tagasilöök, teated, järjekorrad |
Arhitektuuriliste lahenduste näited
Redis + PostgreSQL: varundusega matšide kiire kohaletoimetamine andmebaasi
Kafka + Go teenused: ürituste vastuvõtt ja voogedastuskoefitsient
RabbitMQ + Node. js: boonuste töötlemine, fluffid, e-posti sündmused
Kafka → LiveHouse: analüüsimeetodite voogedastus, kihlvedude jälgimine
Mida see annab platvormi
Sündmusele reageerimine - millisekundites
DB ja API mahalaadimine kasside ja järjekordadega
Mikroservondide skaleeritavus ilma jäiga sidumiseta
Usaldusväärsuse parandamine: rikked ei mõjuta kogu süsteemi
Võime ehitada reaalajas analüüsi ja häireid
Puurid ja maaklerid on kihlveosüsteemide reaalajaline tuum. Redis pakub välk-kiire andmetele juurdepääsu, Kafka ja RabbitMQ hallata sündmuste vood, ja koos nad võimaldavad skaalatavat, rikke tolerantne ja stabiilne platvormi käitumist live koormus. Ilma nendeta ei saa täna ehitada ühtegi tõsist kihlveotoodet.