Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Kāpēc tādai korporācijai kā MegaFon ir nepiecieÅ”ams Tarantool norēķinos? No malas Ŕķiet, ka pārdevējs parasti atnāk, atnes kaut kādu lielu kasti, iesprauž kontaktdakÅ”u rozetē - un tas ir rēķins! Kādreiz tā bija, bet tagad tas ir arhaisks, un Ŕādi dinozauri jau ir izmiruÅ”i vai izmirst. Sākotnēji norēķini ir rēķinu izrakstÄ«Å”anas sistēma ā€“ skaitÄ«Å”anas maŔīna vai kalkulators. MÅ«sdienu telekomunikācijās tas tā ir automatizācijas sistēma visam mijiedarbÄ«bas ar abonentu dzÄ«ves ciklam no lÄ«guma noslēgÅ”anas lÄ«dz izbeigÅ”anai, ieskaitot reāllaika norēķinus, maksājumu pieņemÅ”anu un daudz ko citu. Rēķini telekomunikāciju uzņēmumos ir kā kaujas robots ā€“ liels, jaudÄ«gs un piekrauts ar ieročiem.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Kāds ar to sakars Tarantool? Viņi par to runās Oļegs Ivļevs Šø Andrejs Kņazevs. Oļegs ir uzņēmuma galvenais arhitekts MegaFon ar lielu pieredzi darbā ārvalstu uzņēmumos, Andrejs ir biznesa sistēmu direktors. No viņu ziņojuma atÅ”ifrējuma par Tarantool konference 2018 uzzināsiet, kāpēc korporācijās nepiecieÅ”ama pētniecÄ«ba un attÄ«stÄ«ba, kas ir Tarantool, kā vertikālās mērogoÅ”anas un globalizācijas strupceļŔ kļuva par priekÅ”noteikumiem Ŕīs datu bāzes parādÄ«Å”anās uzņēmumā, par tehnoloÄ£iskajiem izaicinājumiem, arhitektÅ«ras transformāciju un to, kā MegaFon tehnostacks ir lÄ«dzÄ«gs Netflix. , Google un Amazon.

Projekts "Vienotie norēķini"

AttiecÄ«gais projekts tiek saukts par ā€œVienotajiem norēķiniemā€. TieÅ”i Å”eit Tarantool parādÄ«ja savas labākās Ä«paŔības.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Hi-End iekārtu produktivitātes pieaugums neatpalika no abonentu skaita pieauguma un pakalpojumu skaita pieauguma, tika gaidÄ«ts turpmāks abonentu un pakalpojumu skaita pieaugums, pateicoties M2M, IoT un filiāļu funkcijām. lÄ«dz tirgus nonākÅ”anas laika pasliktināŔanās. Uzņēmums nolēma izveidot vienotu biznesa sistēmu ar unikālu pasaules klases moduļu arhitektÅ«ru, nevis 8 paÅ”reizējās dažādas norēķinu sistēmas.

MegaFon ir astoņi uzņēmumi vienā. 2009. gadā tika pabeigta reorganizācija: filiāles visā Krievijā tika apvienotas vienā uzņēmumā MegaFon OJSC (tagad PJSC). Tādējādi uzņēmuma rÄ«cÄ«bā ir 8 norēķinu sistēmas ar saviem ā€œpielāgotiemā€ risinājumiem, filiāles iezÄ«mēm un dažādām organizatoriskām struktÅ«rām, IT un mārketingu.

Viss bija labi, lÄ«dz mums bija jāizlaiž viens kopÄ«gs federālais produkts. Å eit ir raduŔās daudz grÅ«tÄ«bu: vieniem tarifi tiek noapaļoti uz augÅ”u, citiem - uz leju, bet citiem - pamatojoties uz vidējo aritmētisko. Tādu brīžu ir tÅ«kstoÅ”iem.

Neskatoties uz to, ka bija tikai viena norēķinu sistēmas versija, viens piegādātājs, iestatÄ«jumi tik ļoti atŔķīrās, ka to salikÅ”ana prasÄ«ja ilgu laiku. Mēs mēģinājām samazināt to skaitu un saskārāmies ar otru problēmu, kas ir pazÄ«stama daudzām korporācijām.

Vertikālā mērogoÅ”ana. Pat stilÄ«gākā aparatÅ«ra tajā laikā neatbilda vajadzÄ«bām. Mēs izmantojām Hewlett-Packard aprÄ«kojumu no Superdome Hi-End lÄ«nijas, taču tas neatbilda pat divu filiāļu vajadzÄ«bām. Es gribēju horizontālu mērogoÅ”anu bez lielām ekspluatācijas izmaksām un kapitālieguldÄ«jumiem.

Sagaidāms abonentu skaita un pakalpojumu pieaugums. Konsultanti jau sen ir ienesuÅ”i telekomunikāciju pasaulē stāstus par IoT un M2M: pienāks laiks, kad katram tālrunim un gludeklim bÅ«s SIM karte, bet divas ledusskapÄ«. Å odien mums ir viens abonentu skaits, bet tuvākajā nākotnē bÅ«s daudz vairāk.

Tehnoloģiskie izaicinājumi

Å ie četri iemesli motivēja mÅ«s veikt nopietnas izmaiņas. Bija izvēle starp sistēmas jaunināŔanu un projektÄ“Å”anu no nulles. Mēs ilgi domājām, pieņēmām nopietnus lēmumus, spēlējām konkursus. Rezultātā mēs nolēmām projektēt jau no paÅ”a sākuma un pieņēmām interesantus izaicinājumus ā€“ tehnoloÄ£iskus izaicinājumus.

Mērogojamība

Ja tas bija agrāk, teiksim, teiksim 8 rēķini par 15 miljoniem abonentu, un tagad tam vajadzēja darboties 100 miljoni abonentu un vairāk - slodze ir par pakāpi lielāka.

Mēs esam kļuvuÅ”i mērogā salÄ«dzināmi ar lieliem interneta spēlētājiem, piemēram, Mail.ru vai Netflix.

Taču turpmākā kustība uz slodzes un abonentu bāzes palielināŔanu mums ir izvirzījusi nopietnus izaicinājumus.

Mūsu plaŔās valsts ģeogrāfija

Starp Kaļiņingradu un Vladivostoku 7500 km un 10 laika joslas. Gaismas ātrums ir ierobežots un Ŕādos attālumos aizkavÄ“Å”anās jau ir ievērojama. 150 ms vismodernākajos optiskajos kanālos ir pārāk daudz reāllaika rēķinu veikÅ”anai, jo Ä«paÅ”i tāpēc, ka tas tagad ir telekomunikāciju jomā Krievijā. Turklāt jums ir jāatjaunina vienas darbadienas laikā, un ar dažādām laika zonām tā ir problēma.

Mēs nesniedzam pakalpojumus tikai par abonÄ“Å”anas maksu, mums ir sarežģīti tarifi, paketes un dažādi modifikatori. Mums ir ne tikai jāļauj vai jāliedz abonentam runāt, bet arÄ« jāpieŔķir viņam noteikta kvota - jāaprēķina zvani un darbÄ«bas reāllaikā, lai viņŔ to nepamana.

kļūdu tolerance

Tā ir centralizācijas otra puse.

Ja mēs apkopojam visus abonentus vienā sistēmā, tad jebkuri ārkārtas notikumi un katastrofas ir postoÅ”as ā€‹ā€‹uzņēmējdarbÄ«bai. Tāpēc sistēmu veidojam tā, lai novērstu negadÄ«jumu ietekmi uz visu abonentu bāzi.

Tas atkal ir atteikuma vertikāli mērogot sekas. Veicot mērogoÅ”anu horizontāli, mēs palielinājām serveru skaitu no simtiem lÄ«dz tÅ«kstoÅ”iem. Tie ir jāpārvalda un savstarpēji aizvietojami, automātiski jādublē IT infrastruktÅ«ra un jāatjauno izplatÄ«tā sistēma.

Mēs saskārāmies ar tik interesantiem izaicinājumiem. Mēs izstrādājām sistēmu un tajā brīdī mēģinājām atrast pasaules labāko praksi, lai pārbaudītu, cik mēs esam tendencē, cik daudz mēs sekojam progresīvām tehnoloģijām.

Pasaules pieredze

PārsteidzoÅ”i, mēs neatradām nevienu atsauci globālajā telekomunikācijā.

Eiropa ir atkritusi abonentu skaita un mēroga ziņā, ASV - tarifu vienmērīguma ziņā. Mēs apskatījām dažus Ķīnā un atradām dažus Indijā un nolīgām speciālistus no Vodafone India.

Lai analizētu arhitektÅ«ru, mēs izveidojām Dream Team, kuru vadÄ«ja IBM - arhitekti no dažādām jomām. Å ie cilvēki varēja adekvāti novērtēt to, ko mēs darām, un ieviest noteiktas zināŔanas mÅ«su arhitektÅ«rā.

Tuvināt

Daži skaitļi ilustrācijai.

Mēs izstrādājam sistēmu priekÅ” 80 miljoni abonentu ar viena miljarda rezervi. Tādā veidā mēs noņemam nākotnes sliekŔņus. Tas nav tāpēc, ka mēs gatavojamies pārņemt Ķīnu, bet gan IoT un M2M uzbrukuma dēļ.

Reālā laikā apstrādāti 300 miljoni dokumentu. Lai gan mums ir 80 miljoni abonentu, mēs strādājam gan ar potenciālajiem klientiem, gan ar tiem, kas mÅ«s pametuÅ”i, ja nepiecieÅ”ams piedzÄ«t debitoru parādus. Tāpēc faktiskie apjomi ir ievērojami lielāki.

2 miljardi darÄ«jumu Bilance mainās katru dienu ā€“ tie ir maksājumi, maksas, zvani un citi notikumi. 200 TB datu aktÄ«vi mainās, mainiet nedaudz lēnāk 8 PB datu, un tas nav arhÄ«vs, bet gan reāllaika dati vienā rēķinā. Mērogs pēc datu centra ā€” 5 tÅ«kstoÅ”i serveru 14 vietnēs.

Tehnoloģiju kaudze

Kad plānojām arhitektūru un sākām montēt sistēmu, mēs importējām interesantākās un progresīvākās tehnoloģijas. Rezultāts ir tehnoloģiju kaudze, kas pazīstama ikvienam interneta spēlētājam un korporācijām, kas ražo augstas slodzes sistēmas.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Stacks ir līdzīgs citu lielāko spēlētāju kaudzēm: Netflix, Twitter, Viber. Tas sastāv no 6 komponentiem, bet mēs vēlamies to saīsināt un unificēt.

Elastība ir laba, bet lielā korporācijā bez apvienoŔanās neiztikt.

Mēs negrasāmies to paÅ”u Oracle mainÄ«t uz Tarantool. Lielo uzņēmumu realitātē tā ir utopija jeb krusta karÅ” uz 5-10 gadiem ar neskaidru iznākumu. Bet Cassandra un Couchbase var viegli aizstāt ar Tarantool, un tas ir tas, uz ko mēs tiecamies.

Kāpēc Tarantool?

Ir 4 vienkārÅ”i kritēriji, kāpēc mēs izvēlējāmies Å”o datu bāzi.

Ātrums. Mēs veicām MegaFon industriālo sistēmu slodzes testus. Tarantool uzvarēja - tas parādīja labāko sniegumu.

Tas nenozÄ«mē, ka citas sistēmas neatbilst MegaFon vajadzÄ«bām. PaÅ”reizējie atmiņas risinājumi ir tik produktÄ«vi, ka uzņēmuma rezerves ir vairāk nekā pietiekami. Bet mēs esam ieinteresēti rÄ«koties ar vadÄ«tāju, nevis ar kādu, kas atpaliek, tostarp slodzes testā.

Tarantool sedz uzņēmuma vajadzības pat ilgtermiņā.

TCO izmaksas. Couchbase atbalsts MegaFon apjomos maksā astronomiskas naudas summas, taču ar Tarantool situācija ir daudz patīkamāka, turklāt funkcionalitātē tie ir līdzīgi.

Vēl viena jauka iezÄ«me, kas nedaudz ietekmēja mÅ«su izvēli, ir tā, ka Tarantool darbojas labāk ar atmiņu nekā citas datu bāzes. ViņŔ parāda maksimālā efektivitāte.

UzticamÄ«ba. MegaFon iegulda uzticamÄ«bā, iespējams, vairāk nekā jebkurÅ” cits. Tātad, kad mēs apskatÄ«jām Tarantool, mēs sapratām, ka mums tas ir jāatbilst mÅ«su prasÄ«bām.

Mēs ieguldījām savu laiku un finanses, un kopā ar Mail.ru izveidojām uzņēmuma versiju, kas tagad tiek izmantota vairākos citos uzņēmumos.

Tarantool-uzņēmums mÅ«s pilnÄ«bā apmierināja droŔības, uzticamÄ«bas un mežizstrādes ziņā.

Partnerība

Man vissvarīgākais ir tieŔs kontakts ar izstrādātāju. Tas ir tieŔi tas, ko puiŔi no Tarantool uzpirka.

Ja jÅ«s atnākat pie spēlētāja, Ä«paÅ”i tāda, kurÅ” strādā ar enkurklientu, un sakāt, ka jums ir nepiecieÅ”ama datu bāze, lai varētu izdarÄ«t to, to un to, viņŔ parasti atbild:

- Labi, ievietojiet prasÄ«bas Ŕīs kaudzes apakŔā - kādreiz mēs, iespējams, tiksim pie tām.

Daudziem ir ceļvedis nākamajiem 2-3 gadiem, un tur ir gandrÄ«z neiespējami integrēties, taču Tarantool izstrādātāji valdzina ar savu atvērtÄ«bu un ne tikai no MegaFon un pielāgo savu sistēmu klientam. Tas ir forÅ”i, un mums tas ļoti patÄ«k.

Kur mēs izmantojām Tarantool

Mēs izmantojam Tarantool vairākos elementos. Pirmais ir pilotā, ko izveidojām adreÅ”u direktoriju sistēmā. Savulaik es gribēju, lai tā bÅ«tu sistēma, kas ir lÄ«dzÄ«ga Yandex.Maps un Google Maps, bet izrādÄ«jās nedaudz savādāk.

Piemēram, adreÅ”u katalogs pārdoÅ”anas saskarnē. Oracle vajadzÄ«gās adreses meklÄ“Å”ana aizņem 12ā€“13 sekundes. - neērti skaitļi. Kad pārslēdzamies uz Tarantool, konsolē aizstājam Oracle ar citu datu bāzi un veicam to paÅ”u meklÄ“Å”anu, mēs iegÅ«stam 200x paātrinājumu! Pilsēta parādās pēc treŔās vēstules. Tagad mēs pielāgojam saskarni tā, lai tas notiktu pēc pirmā. Taču reakcijas ātrums ir pavisam cits ā€“ sekunžu vietā milisekundes.

Otrā lietojumprogramma ir moderna tēma, ko sauc par divu ātrumu IT. Tas tāpēc, ka konsultanti no katra stūra saka, ka korporācijām tur vajadzētu doties.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Ir infrastruktÅ«ras slānis, virs tā ir domēni, piemēram, norēķinu sistēma kā telekomunikācija, korporatÄ«vās sistēmas, korporatÄ«vās atskaites. Tas ir kodols, kuram nav jāpieskaras. Tas, protams, ir iespējams, bet paranoiski nodroÅ”inot kvalitāti, jo tas korporācijai nes naudu.

Tālāk seko mikropakalpojumu slānis ā€“ kas atŔķir operatoru vai citu spēlētāju. Mikropakalpojumus var ātri izveidot, pamatojoties uz noteiktām keÅ”atmiņām, nogādājot datus no dažādiem domēniem. Å eit lauks eksperimentiem ā€” ja kaut kas neizdevās, es aizvēru vienu mikropakalpojumu un atvēru citu. Tas nodroÅ”ina patiesi ilgāku laiku lÄ«dz tirdzniecÄ«bai un palielina uzņēmuma uzticamÄ«bu un ātrumu.

Mikropakalpojumi, iespējams, ir galvenā Tarantool loma uzņēmumā MegaFon.

Kur mēs plānojam izmantot Tarantool

Ja salÄ«dzinām mÅ«su veiksmÄ«go norēķinu projektu ar Deutsche Telekom, Svyazcom, Vodafone India transformācijas programmām, tas ir pārsteidzoÅ”i dinamisks un radoÅ”s. ÄŖstenojot Å”o projektu, tika pārveidots ne tikai MegaFon un tā struktÅ«ra, bet arÄ« Tarantool-uzņēmums parādÄ«jās Mail.ru un mÅ«su pārdevējs Nexign (agrāk Peter-Service) - BSS Box (kastes norēķinu risinājums).

Tas savā ziņā ir vēsturisks projekts Krievijas tirgum. To var salÄ«dzināt ar to, kas aprakstÄ«ts Frederika BrÅ«ksa grāmatā ā€œThe Mythical Man-Monthā€. Pēc tam 60. gados IBM nolÄ«ga 360 cilvēku, lai izstrādātu jauno OS/5 operētājsistēmu lieldatoriem. Mums ir mazāk - 000, bet mÅ«sējie ir vestēs, un, ņemot vērā atvērtā koda izmantoÅ”anu un jaunas pieejas, strādājam produktÄ«vāk.

Tālāk ir norādÄ«tas norēķinu vai, plaŔāk runājot, biznesa sistēmu jomas. Cilvēki no uzņēmuma ļoti labi pārzina CRM. Visiem jau vajadzētu bÅ«t citām sistēmām: Open API, API Gateway.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Atvērt API

ApskatÄ«sim vēlreiz skaitļus un to, kā paÅ”laik darbojas Open API. Tās slodze ir 10 000 darÄ«jumu sekundē. Tā kā mēs plānojam aktÄ«vi attÄ«stÄ«t mikropakalpojumu slāni un veidot MegaFon publisko API, mēs sagaidām lielāku izaugsmi nākotnē Å”ajā daļā. Noteikti bÅ«s 100 000 darÄ«jumu.

Es nezinu, vai mēs varam salÄ«dzināt ar Mail.ru SSO ā€” Ŕķiet, ka puiÅ”iem ir 1 000 0000 darÄ«jumu sekundē. Viņu risinājums mums ir ārkārtÄ«gi interesants, un mēs plānojam izmantot viņu pieredzi, piemēram, izveidot funkcionālu SSO dublējumu, izmantojot Tarantool. Tagad Mail.ru izstrādātāji to dara mÅ«su vietā.

CRM

CRM ir tie paÅ”i 80 miljoni abonentu, kurus vēlamies palielināt lÄ«dz miljardam, jo ā€‹ā€‹jau ir 300 miljoni dokumentu, kas ietver trÄ«s gadu vēsturi. Mēs ļoti gaidām jaunus pakalpojumus un Å”eit izaugsmes punkts ir saistÄ«tie pakalpojumi. Å Ä« ir bumba, kas augs, jo servisu bÅ«s arvien vairāk. AttiecÄ«gi mums bÅ«s nepiecieÅ”ams stāsts; mēs nevēlamies uz to paklupt.

Pati norēķināŔanās attiecÄ«bā uz rēķinu izrakstÄ«Å”anu un darbu ar klientu debitoru parādiem pārveidots par atseviŔķu domēnu. Lai uzlabotu veiktspēju, lietiŔķā domēna arhitektÅ«ras arhitektÅ«ras modelis.

Sistēma ir sadalÄ«ta domēnos, tiek sadalÄ«ta slodze un tiek nodroÅ”ināta kļūdu tolerance. Turklāt mēs strādājām ar izplatÄ«to arhitektÅ«ru.

Viss pārējais ir uzņēmuma lÄ«meņa risinājumi. Zvanu krātuvē - 2 miljardi dienā, 60 miljardi mēnesÄ«. Dažreiz tie ir jāskaita mēnesÄ«, un tas ir labāk ātri. FinanÅ”u uzraudzÄ«ba - tie ir tieÅ”i tie paÅ”i 300 miljoni, kas nepārtraukti aug un aug: abonenti bieži kursē starp operatoriem, palielinot Å”o daļu.

Visvairāk telekomunikāciju mobilo sakaru komponents ir tieÅ”saistes norēķini. Tās ir sistēmas, kas ļauj zvanÄ«t vai nezvanÄ«t, pieņemt lēmumus reāllaikā. Å eit slodze ir 30 000 transakciju sekundē, bet, ņemot vērā datu pārraides pieaugumu, plānojam 250 000 darÄ«jumu, un tāpēc mÅ«s ļoti interesē Tarantool.

IepriekŔējā attēlā ir norādÄ«ti domēni, kuros mēs izmantosim Tarantool. Pats CRM, protams, ir plaŔāks, un mēs to izmantosim paŔā kodolā.

MÅ«su aprēķinātais TTX abonentu skaits ā€” 100 miljoni ā€” mani kā arhitektu mulsina ā€” ja nu 101 miljons? Vai jums viss ir jāatkārto vēlreiz? Lai tas nenotiktu, mēs izmantojam keÅ”atmiņas, vienlaikus palielinot pieejamÄ«bu.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Kopumā Tarantool lietoÅ”anai ir divas pieejas. Pirmkārt - veidot visas keÅ”atmiņas mikropakalpojumu lÄ«menÄ«. Cik saprotu, VimpelCom iet Å”o ceļu, veidojot klientu keÅ”atmiņu.

Mēs esam mazāk atkarÄ«gi no piegādātājiem, mēs mainām BSS kodolu, tāpēc mums ir pieejams viens klienta fails. Bet mēs vēlamies to paplaÅ”ināt. Tāpēc mēs izmantojam nedaudz atŔķirÄ«gu pieeju - izveidot keÅ”atmiņas sistēmās.

Tādā veidā ir mazāka sinhronizācija - viena sistēma ir atbildÄ«ga gan par keÅ”atmiņu, gan galveno galveno avotu.

Metode labi sader ar Tarantool pieeju ar darÄ«jumu skeletu, kad tiek atjauninātas tikai tās daļas, kas attiecas uz atjauninājumiem, tas ir, datu izmaiņām. Visu pārējo var glabāt kaut kur citur. Nav milzÄ«ga datu ezera, nepārvaldÄ«tas globālās keÅ”atmiņas. KeÅ”atmiņas ir paredzētas sistēmai vai produktiem, vai klientiem, vai lai atvieglotu apkopi. Kad abonents zvana un ir sarÅ«gtināts par jÅ«su pakalpojuma kvalitāti, jÅ«s vēlaties nodroÅ”ināt kvalitatÄ«vu pakalpojumu.

RTO un RPO

IT ir divi termini - OTR Šø RPO.

AtveseļoÅ”anās laika mērÄ·is ir laiks, kas nepiecieÅ”ams pakalpojuma atjaunoÅ”anai pēc kļūmes. RTO = 0 nozÄ«mē, ka pat tad, ja kaut kas neizdodas, pakalpojums turpina darboties.

AtgÅ«Å”anas punkta mērÄ·is - tas ir datu atkopÅ”anas laiks, cik daudz datu varam zaudēt noteiktā laika periodā. RPO = 0 nozÄ«mē, ka mēs nezaudējam datus.

Tarantool uzdevums

Mēģināsim atrisināt Tarantool problēmu.

Ņemot vērā: visiem saprotams aplikāciju grozs, piemēram, Amazon vai kur citur. nepiecieÅ”ams lai iepirkumu grozs darbotos 24 stundas 7 dienas nedēļā jeb 99,99% laika. PasÅ«tÄ«jumiem, kas nonāk pie mums, ir jāpaliek kārtÄ«bā, jo mēs nevaram nejauÅ”i ieslēgt vai izslēgt abonenta savienojumu - visam jābÅ«t stingri saskaņotam. IepriekŔējais abonements ietekmē nākamo, tāpēc dati ir svarÄ«gi ā€“ nekas nedrÄ«kst pazust.

Å Ä·Ä«dums. Varat mēģināt to atrisināt uzreiz un jautāt datu bāzes izstrādātājiem, taču problēmu nevar atrisināt matemātiski. Var atcerēties teorēmas, saglabāŔanas likumus, kvantu fiziku, bet kāpēc - to nevar atrisināt DB lÄ«menÄ«.

Å eit darbojas vecā labā arhitektÅ«ras pieeja ā€“ ir labi jāpārzina mācÄ«bu joma un jāizmanto tā, lai atrisinātu Å”o mÄ«klu.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

MÅ«su risinājums: izveidot izplatÄ«tu lietojumprogrammu reÄ£istru vietnē Tarantool - Ä£eogrāfiski izplatÄ«tā klasterÄ«. Diagrammā tie ir trÄ«s dažādi datu apstrādes centri - divi pirms Urāliem, viens aiz Urāliem, un mēs sadalām visus pieprasÄ«jumus starp Å”iem centriem.

Netflix, kas Å”obrÄ«d tiek uzskatÄ«ts par vienu no IT lÄ«deriem, lÄ«dz 2012. gadam bija tikai viens datu centrs. Katoļu Ziemassvētku priekÅ”vakarā, 24. decembrÄ«, Å”is datu centrs nedarbojās. Lietotāji Kanādā un ASV palika bez iecienÄ«tākajām filmām, bija ļoti satraukti un rakstÄ«ja par to sociālajos tÄ«klos. Netflix tagad ir trÄ«s datu centri rietumu-austrumu krastā un viens Rietumeiropā.

Mēs sākotnēji veidojam Ä£eogrāfiski sadalÄ«tu risinājumu ā€“ mums ir svarÄ«ga kļūdu tolerance.

Tātad mums ir klasteris, bet kā ar RPO = 0 un RTO = 0? Risinājums ir vienkārÅ”s, atkarÄ«bā no tēmas.

Kas ir svarÄ«gi pieteikumos? Divas daļas: groza meÅ”ana TO pieņemot lēmumu par pirkumu, un PĒC. DO daļu telekomunikācijās parasti sauc pasÅ«tÄ«juma sagÅ«stÄ«Å”ana vai pasÅ«tÄ«juma pārrunas. Telekomā tas var bÅ«t daudz grÅ«tāk nekā interneta veikalā, jo tur klients ir jāapkalpo, jāpiedāvā 5 varianti, un tas viss notiek kādu laiku, bet grozs ir piepildÄ«ts. Å obrÄ«d ir iespējama neveiksme, taču tas nav biedējoÅ”i, jo tas notiek interaktÄ«vi cilvēka uzraudzÄ«bā.

Ja Maskavas datu centrs pēkŔņi neizdodas, tad, automātiski pārejot uz citu datu centru, mēs turpināsim strādāt. Teorētiski viena prece var pazust grozā, bet tu to redzi, atkal pievieno grozam un turpini strādāt. Å ajā gadÄ«jumā RTO = 0.

Tajā paŔā brÄ«dÄ« ir arÄ« otra iespēja: noklikŔķinot uz ā€œiesniegtā€, mēs vēlamies, lai dati nepazustu. No Ŕī brīža sāk darboties automatizācija - tas ir RPO = 0. Izmantojot Å”os divus dažādos modeļus, vienā gadÄ«jumā tas varētu bÅ«t vienkārÅ”i Ä£eogrāfiski sadalÄ«ts klasteris ar vienu pārslēdzamu galveno, citā gadÄ«jumā kaut kāds kvoruma ieraksts. Raksti var atŔķirties, bet mēs atrisinām problēmu.

Turklāt, ja ir izplatÄ«ts lietojumprogrammu reÄ£istrs, mēs varam arÄ« to visu mērogot ā€“ Å”im reÄ£istram piekļūst daudzi dispečeri un izpildÄ«tāji.

Jaunās paaudzes norēķinu arhitektūra: transformācija ar pāreju uz Tarantool

Kasandra un Tarantools kopā

Ir vēl viens gadÄ«jums - "bilances vitrÄ«na". Å eit ir interesants Cassandra un Tarantool kopÄ«gas lietoÅ”anas gadÄ«jums.

Mēs izmantojam Cassandra, jo 2 miljardi zvanu dienā nav ierobežojums, un būs vairāk. Mārketinga speciālistiem patīk iekrāsot trafiku pēc avota; piemēram, sociālajos tīklos parādās arvien vairāk informācijas. Tas viss papildina stāstu.

Cassandra ļauj mērogot horizontāli jebkura izmēra.

Mēs jÅ«tamies ērti ar Kasandru, bet tai ir viena problēma - tas neprot lasÄ«t. Ierakstā viss ir kārtÄ«bā, 30 000 sekundē nav problēma - lasÄ«Å”anas problēma.

Tāpēc parādÄ«jās tēma ar keÅ”atmiņu, un tajā paŔā laikā mēs atrisinājām Ŕādu problēmu: ir vecs tradicionāls gadÄ«jums, kad aprÄ«kojums, pārejot no tieÅ”saistes norēķiniem, nonāk failos, kurus mēs ielādējam Cassandra. Mēs cÄ«nÄ«jāmies ar Å”o failu uzticamas lejupielādes problēmu, pat izmantojot IBM pārvaldnieka failu pārsÅ«tÄ«Å”anas ieteikumus - ir risinājumi, kas efektÄ«vi pārvalda failu pārsÅ«tÄ«Å”anu, izmantojot, piemēram, UDP protokolu, nevis TCP. Tas ir labi, bet vēl ir minÅ«tes, un mēs vēl neesam to visu ielādējuÅ”i, operators zvanu centrā nevar atbildēt klientam, kas noticis ar viņa bilanci - mums jāgaida.

Lai tas nenotiktu, mēs izmantojam paralēlo funkcionālo rezervi. NosÅ«tot notikumu, izmantojot Kafka uz Tarantool, reāllaikā pārrēķinot apkopojumus, piemēram, Å”odienai, mēs iegÅ«stam skaidras naudas atlikumi, kas var pārsÅ«tÄ«t atlikumus jebkurā ātrumā, piemēram, 100 tÅ«kstoÅ”i darÄ«jumu sekundē un tās paÅ”as 2 sekundes.

MērÄ·is ir, lai pēc zvanÄ«Å”anas 2 sekunžu laikā jÅ«su personÄ«gajā kontā bÅ«tu ne tikai izmainÄ«tais atlikums, bet arÄ« informācija par to, kāpēc tas mainÄ«jies.

Secinājums

Å ie bija Tarantool lietoÅ”anas piemēri. Mums ļoti patika Mail.ru atvērtÄ«ba un viņu vēlme izskatÄ«t dažādus gadÄ«jumus.

Jau tagad konsultantiem no BCG vai McKinsey, Accenture vai IBM ir grÅ«ti mÅ«s pārsteigt ar kaut ko jaunu ā€” lielu daļu no viņu piedāvātā mēs jau darām, esam izdarÄ«juÅ”i vai plānojam darÄ«t. Es domāju, ka Tarantool ieņems savu Ä«sto vietu mÅ«su tehnoloÄ£iju kaudzē un aizstās daudzas esoŔās tehnoloÄ£ijas. Esam aktÄ«vajā Ŕī projekta izstrādes fāzē.

Oļega un Andreja ziņojums ir viens no labākajiem Tarantool konferencē pagājuÅ”ajā gadā, un 17. jÅ«nijā Oļegs Ivļevs uzstāsies plkst. T+ konference 2019 ar ziņojumu ā€œKāpēc Tarantool uzņēmumāā€. Aleksandrs Deulins uzstāsies arÄ« ar MegaFon prezentāciju "Tarantool keÅ”atmiņas un replikācija no Oracle". Noskaidrosim, kas ir mainÄ«jies, kādi plāni Ä«stenoti. Pievienojies ā€“ konference ir bez maksas, atliek vien reÄ£istrēties. Viss atskaites pieņemtas un ir izveidota konferences programma: jauni gadÄ«jumi, jauna pieredze Tarantool lietoÅ”anā, arhitektÅ«ra, uzņēmums, apmācÄ«bas un mikropakalpojumi.

Avots: www.habr.com

Pievieno komentāru