Кейстер — біз құрған және қызмет көрсететін жүйелер · Codelabs
RU|EN|KK

12 CASE

Не жасалып қойды

Он екі жүйе, әрқайсысы прототип портфолиосында емес, пайдалануда. Цифрлар жұмыс істеп тұрған өнімдерден алынған және жоғары қарай дөңгелектелмеген: 1.24 млн деп жазылса, дәл сонша.

CASE 01Кілт тапсырымды iGaming платформасы

2 миллион адам пайдаланатын ойын платформасы

Операторға жеке ойын емес, бүкіл бизнес керек болды: ойыншыларға арналған сайт, физикалық нүктелердегі касса, қызметкерлерге арналған басқару панелі, өз ойындары, сыртқы жеткізушілердің ойындары, төлем қабылдау, серіктестік бағдарлама. Біз мұны бір жүйе ретінде жасадық — және сол жүйеден әрқайсысы өз безендірілуімен 15 түрлі бренд іске қосылады, әрқайсысына кодты көшірмей.

ПлатформаТөлемдерЖоғары жүктеме
Кейсті талдау →
  • ·2.18 млн ойыншы
  • ·тәулігіне ~1.5 млн ақша операциясы
  • ·бір кодтық базадан 15 бренд
  • ·дерекқор 13 серверге таратылған
CASE 02Тарихты бағаналы қоймаға көшіру

Ыстық база 45 есе кішірейді — төлемдер тоқтаған жоқ

Ақша журналы жүздеген миллион жолға дейін өсті де, онымен жұмыс істейтіннің бәрі баяулай бастады. Негізгі базада қырық бес күннің орнына бір тәулікті қалдырдық, ал бүкіл тарихты бөлек қоймаға ағынмен жібердік — кідірісі секундпен өлшенеді. Әрбір есепті жаңа оқуға бір-бірлеп, шағын релиздермен көшірдік және әр қадамда ескі жауапты жаңасымен салыстырдық: айырма нөл болуға тиіс еді. Солай болды да.

ДеректерMariaDBClickHouse
Кейсті талдау →
  • ·ыстық база: 45 күннің орнына бір тәулік
  • ·тарих толық сақталды
  • ·әр қадамдағы салыстыру: айырма 0.00
  • ·төлемдер тоқтаған жоқ
CASE 03Нақты уақыттағы букмекерлік конвейер

Матчтан қалып қоймайтын коэффициенттер

Букмекерге 12 спорт түрі бойынша коэффициент өзгерістерінің ағыны келеді. Оларды лезде матчтар бойынша жіктеп, барлық ашық браузерге жіберу керек — ешкім ескірген бағаны көріп, оған үлгеріп мөлшерлеме қоймайтындай. Біз бұл үшін C++ тілінде өз ядромызды және өз жеткізу хаттамамызды жаздық: ойыншының байланысы үзілсе, ол қоқыс емес, дұрыс қалпына келтірілген көріністі алады.

Real-timeC++Мөлшерлемелер
Кейсті талдау →
  • ·бір ағында 12 спорт түрі
  • ·2020 жылдан бері продакшенде
  • ·дәл осы ағын серіктестерге жеке өнім ретінде сатылады
CASE 04Жүктеме инжинирингі

Ставканы есептеу 15 есе жылдамдады

Кәдімгі күнді платформа көтеретін, бірақ танымал матчта ставкалар көшкін болып келіп, ұтысты есептеу кезекке тұратын. Жүктеме генераторын жазып, сол шың сағатты стендте қайталадық та, кінәліні көрдік: есептеу бір ағынмен жүріп жатыр екен. Оны тәуелсіз жолдарға бөлгеннен кейін қарқын он бес есеге жуық өсті — және бұл продакшенге жеткізілді.

ЖүктемеОңтайландыруСтавкалар
Кейсті талдау →
  • ·минутына 290-нан 4360 ставкаға дейін
  • ·жүктеме: 274 виртуалды ойыншы
  • ·123 543 ставкада тексерілді
  • ·қос төлем де, жоғалған есептеу де нөл
CASE 05Криптотөлем шлюзі

10 блокчейн желісіндегі криптотөлемдер

Міндет қарапайым естіледі: клиент криптомен төлейді — бизнес ақшаны жергілікті валютада алады. Осы қарапайымдылықтың артында қалғанының бәрі жасырынған: әр клиентке өз мекенжайын беру, кіріс төлемді блокчейннен көру, растауларды күту, ақшаның шығу тегін тексеру, бағамды есептеу және онда ұтылмау. Біз мұның бәрін бір жүйеге жинадық.

КриптоТөлемдерAML тексеру
Кейсті талдау →
  • ·85 млн-нан астам операция
  • ·10 желі: Ethereum, TRON, Solana, TON, Bitcoin және басқалары
  • ·бағам биржа өтінімдері бойынша автоматты есептеледі
CASE 06Live-бейне және жабдықты қашықтан басқару

Нағыз автоматта ойнау — браузерден

Адам сайтты ашып, залда тұрған нағыз ойын автоматының тікелей бейнесін көреді. Ол экрандағы түймені басады — және ол автоматтың өзінде басылады: сигнал браузерден серверге, серверден корпус ішіндегі платаға барады, плата контактіні тұйықтайды. Барабандар айналады, камера нәтижені көрсетеді, ақша залдағы тірі келуші сияқты есептеледі. Мұнда бәрін өзіміз жасадық: плата микробағдарламасынан бейнені көрсететін клиентке дейін.

БейнеЭлектроникаWebRTC
Кейсті талдау →
  • ·шамамен 1000 автомат желіде
  • ·1998 бір мезгілдегі бейне ағыны
  • ·автомат ішіндегі өз платамыз және өз микробағдарламамыз
CASE 07IoT-бақылау және жергілікті позициялау

Футболшыдағы датчик және алаңның жылу картасы

Жаттықтырушыға ойыншының қанша жүгіргенін, алаңның қай жерінде болғанын, қаншалықты жиі екпін алғанын және тамыр соғысымен не болып жатқанын көру керек. Біз киілетін белгі әзірледік — платасын өзіміз салдық, микробағдарламасын өзіміз жаздық, — стадионға қабылдағыштар орнаттық және радиосигнал бойынша әр ойыншының орнын есептейтін сервер жаздық. Жаттықтырушы матч кезінде алаңның тірі картасын, матчтан кейін жылу карталарын алады.

IoTСпортЭлектроника
Кейсті талдау →
  • ·өз платамыз: радиомодуль, қозғалыс датчиктері, ЭКГ, GPS
  • ·орын бірнеше қабылдағыштың радиосигналы бойынша есептеледі
  • ·белгілерге арналған зарядтау капсулалары да біздің әзірлемеміз
CASE 08Лотерея платформасы

Цифрлық форматқа көшірілген ұлттық лотерея

Ставкалар онлайн да, қағаз чегі бар жердегі кассаларда да қабылданады, ал нәтижелер ресми ұтыс ойындарынан алынады. Нәтижелерді талдауды, екі рет орындалуы мүмкін емес төлем есебін, коэффициенті 25 000-ға дейінгі бес ставка түрін және өзі толатын джекпотты жаздық. Серіктестерге мұның бәрі өз интеграция жинағы бар бөлек модуль болып беріледі.

ЛотереяТөлемдерКассалар
Кейсті талдау →
  • ·онлайн және офлайн касса желісі
  • ·бес ставка түрі, коэффициенті ×25000-ға дейін
  • ·қос төлем есептеу деңгейінде мүмкін емес
  • ·серіктестерге кірістірілетін модуль ретінде беріледі
CASE 09Ақша аудару желісі

Бір елден жіберіліп, екіншісінде алынатын қолма-қол ақша

Адам бір елдің кассасына қолма-қол ақша салады, алушы оны екінші елде аударым нөмірі мен төрт таңбалы PIN арқылы алады. Комиссия қабылдаған нүкте, оператор және берген нүкте арасында автоматты бөлінеді. Әрбір сұраныс пен жауап криптографиялық қолтаңбамен расталады, барлық операция екі тәуелсіз журналға жазылады, ал PIN он рет қате енгізілсе аударым бұғатталады.

ТөлемдерКассаларФинтех
Кейсті талдау →
  • ·агенттік нүктеде PIN бойынша қолма-қол беру
  • ·комиссияның үш бөлігі автоматты бөлінеді
  • ·үш валюта арасында конвертация
  • ·барлық операцияның қос журналдануы
CASE 10SMS инфрақұрылымы

Сенімді агрегаторы жоқ жерде SMS жеткізу

Әдеттегі тарату қызметтері жұмыс істемейтін нарықта шешімнің төрт буынынан өттік: аппараттық GSM шлюздері, операторлармен тікелей интеграция, оператордың жабық порталын автоматтандыру және ақыры кәдімгі телефондарды шлюзге айналдыратын өз Android қосымшамыз. Барлық буын бір кезек және бір үлгілер жинағы арқылы жұмыс істеді.

SMSAndroidИнтеграциялар
Кейсті талдау →
  • ·аптасына шамамен 7.5 мың SMS
  • ·нөмір операторы бойынша бағыттау
  • ·12 бренд үшін үлгілер
  • ·парольсіз кіруге арналған кіріс SMS шлюзі ретіндегі телефон
CASE 11Протокол эмуляторлары және қабылдау

Касса бағдарламасы бірде-бір айырмасыз ауыстырылды

Касса бағдарламасы жаңасына ауыстырылып жатты, ал жаңа жүйенің ескісіндей санайтынын дәлелдеу керек болды. Әрбір ойын клиенті үшін эмулятор жаздық — он екеу, — солар арқылы мыңдаған ставканы өткіздік және екі жүйенің есептерін жол-жолымен салыстырдық. Кез келген айырма құрастыруды құлататын, сондықтан «бәрі сәйкес сияқты» тексерілетін фактіге айналды.

QAКассаларАвтотесттер
Кейсті талдау →
  • ·12 желілік протокол эмуляторы
  • ·бір айналымда мыңдаған ставка
  • ·әрбір ұтысты коэффициент кестелерімен салыстыру
  • ·айырма — CI-дағы қызыл құрастыру
CASE 12Үлкен кестелердегі есептілік

Үзілуін қойған есеп жүктемелері

Касса есептілігі синхронды жүктелетін: қырық шақты секунд күту және ұзақ кезеңдерде таймаут бойынша үзіліс. Жүктеуді дайындық индикаторы бар фондық тапсырмаға, ал оқуды жады шығыны тұрақты курсорға көшірдік. Сонымен қатар бүкіл кестені қайта санамай бет санын көрсетуді және соңғы бетке секундпен өтуді үйрендік.

ЕсептерӨнімділікДеректер
Кейсті талдау →
  • ·90 млн жолдық кесте
  • ·жүктеу таймаут бойынша үзілмейді
  • ·бет санын бағалау дәлдігі ±0.1%
  • ·экран мен файлдың сәйкестігі автотестпен бекітілген

Міндетіңізді сипаттаңыз — оның қай бөлігі бізде жасалғанын айтамыз