Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Niyə MegaFon kimi bir korporasiya hesablaşmada Tarantool-a ehtiyac duyur? Kənardan belə görünür ki, adətən satıcı gəlir, hansısa böyük qutu gətirir, tıxacını rozetkaya qoyur – bu, hesablaşmadır! Bir vaxtlar olub, indi isə arxaikdir və belə dinozavrlar artıq ölüb və ya məhv olmaq üzrədir. Əvvəlcə faktura hesab-faktura sistemidir - qafiyə və ya kalkulyator. Bugünkü telekommunikasiyada Müqavilənin bağlanmasından xitam verilməsinə qədər abunəçi ilə qarşılıqlı əlaqənin bütün həyat dövrü üçün avtomatlaşdırma sistemi, o cümlədən real vaxt hesablama, ödəniş qəbulu və daha çox. Telekommunikasiya şirkətlərində hesablaşma döyüş robotuna bənzəyir - böyük, güclü və silahla asılmışdır.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Bəs Tarantool haqqında nə demək olar? Bu haqda məlumat verəcək Oleq İvlev и Andrey Knyazev. Oleq şirkətin baş memarıdır Megafon xarici şirkətlərdə böyük təcrübəyə malik Andrey biznes sistemlərinin direktorudur. Onların hesabatının stenoqramından Tarantool Konfransı 2018 korporasiyalarda R&D-nin nə üçün lazım olduğunu, Tarantool-un nə olduğunu, şaquli miqyaslı çıxılmaz nöqtənin və qloballaşmanın şirkətdə bu verilənlər bazasının yaranması üçün ilkin şərtlərə çevrildiyini, texnoloji problemlər, memarlıq transformasiyası və MegaFon texnostakının Netflix-ə necə bənzədiyini öyrənəcəksiniz. , Google və Amazon.

"Vahid faktura" layihəsi

Müzakirə olunacaq layihə “Vahid Billinq” adlanır. Məhz orada Tarantool özünün ən yaxşı keyfiyyətlərini göstərdi.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Hi-End avadanlığının performans artımı abunəçi bazasının artımı və xidmətlərin sayının artımı ilə ayaqlaşa bilmədi, M2M, IoT və filial xüsusiyyətləri hesabına abunəçilərin və xidmətlərin sayında daha da artım gözlənilirdi. bazara çıxma müddətinin pisləşməsi. Şirkət 8 cari müxtəlif hesablaşma sistemi əvəzinə unikal dünya səviyyəli modul arxitekturaya malik vahid biznes sistemi yaratmağa qərar verdi.

MegaFon birində səkkiz şirkətdir. 2009-cu ildə yenidən təşkil tamamlandı: bütün Rusiyadakı filiallar bir şirkət MegaFon ASC (indiki PJSC) ilə birləşdirildi. Belə ki, şirkət öz “xüsusi” həlləri, filial xüsusiyyətləri və müxtəlif təşkilati strukturu, İT və marketinqi ilə 8 billinq sisteminə malikdir.

Bir ümumi federal məhsul buraxılana qədər hər şey yaxşı idi. Burada bir çox çətinliklər yarandı: kiminsə yuvarlaqlaşdırma ilə hesablama, kiminsə daha kiçik, kiminsə arifmetik ortalaması var. Belə anlar minlərlədir.

Faturalandırma sisteminin versiyasının bir, bir təchizatçı olmasına baxmayaraq, parametrlər bir-birindən ayrıldı ki, yapışdırmaq çox vaxt aparacaq. Biz onların sayını azaltmağa çalışdıq və bir çox korporasiyalara tanış olan ikinci problemlə qarşılaşdıq.

Şaquli miqyaslama. O dövrdə ən sərin dəmir belə ehtiyacları ödəmirdi. Biz Hewlett-Packard avadanlığından, Superdome Hi-End xəttindən istifadə etdik, lakin o, hətta iki filialın ehtiyaclarını ödəmirdi. Mən yüksək əməliyyat xərcləri və kapital qoyuluşu olmadan üfüqi miqyas istəyirdim.

Abunəçilərin və xidmətlərin sayında artım gözləntiləri. Məsləhətçilər çoxdan telekommunikasiya dünyasına IoT və M2M haqqında hekayələr gətirdilər: elə bir zaman gələcək ki, hər telefonda və ütüdə SİM kart, ikisi isə soyuducuda olacaq. Bu gün bir abunəçimiz var və yaxın gələcəkdə daha çox böyük bir sifariş olacaq.

Texnoloji problemlər

Bu dörd səbəb bizi böyük dəyişikliklərə sövq etdi. Sistemi təkmilləşdirmək və sıfırdan dizayn etmək arasında seçim var idi. Uzun müddət düşündük, ciddi qərarlar verdik, tenderlər oynadıq. Nəticə etibarı ilə, biz əvvəldən dizayn etmək qərarına gəldik və maraqlı çağırışları - texnoloji çağırışları qəbul etdik.

Ölçeklenebilirlik

Əgər əvvəllər olsaydı, şərti olaraq deyək ki, 8 milyon abunəçi üçün 15 fakturavə indi belə olmalıdır 100 milyon abunəçi və daha çox - yük daha yüksəkdir.

Biz Mail.ru və ya Netflix kimi böyük İnternet oyunçuları ilə miqyasda müqayisə oluna bildik.

Amma yükün və abonent bazasının artırılması istiqamətində gələcək hərəkət bizim qarşımıza ciddi vəzifələr qoyub.

Geniş ölkəmizin coğrafiyası

Kalininqrad və Vladivostok arasında 7500 km və 10 saat qurşağı. İşıq sürəti sonludur və belə məsafələrdə gecikmələr artıq əhəmiyyətlidir. Ən yaxşı müasir optik kanallarda 150 ms, real vaxt hesablamaları üçün bir qədər çoxdur, xüsusən də Rusiyada telekommunikasiyada olduğu kimi. Bundan əlavə, bir iş günündə yeniləməlisiniz və fərqli saat zonaları ilə problem yaranır.

Biz sadəcə aylıq ödənişlə xidmət göstərmirik, kompleks tariflərimiz, paketlərimiz, müxtəlif modifikatorlarımız var. Biz yalnız abunəçiyə danışmağa icazə vermək və ya qadağan etmək deyil, ona müəyyən bir kvota vermək lazımdır - zəngləri və hərəkətləri real vaxtda hesablamaq lazımdır ki, o, fərq etməsin.

xətaya dözümlülük

Bu, mərkəzləşmənin digər tərəfidir.

Bütün abunəçiləri bir sistemdə toplasaq, istənilən fövqəladə hadisələr və fəlakətlər biznes üçün acınacaqlı olar. Buna görə də, biz sistemi elə tərtib edirik ki, qəzaların bütün abunəçi bazasına təsirini istisna edək.

Bu, yenə də şaquli miqyasdan imtinanın nəticəsidir. Üfüqi miqyaslamaya girəndə serverlərin sayını yüzlərdən minlərlə artırdıq. Onlar idarə olunmalı və bir-birini əvəz etməli, İT infrastrukturunun avtomatik ehtiyat nüsxəsini çıxarmalı və paylanmış sistemi bərpa etməlidir.

Qarşımızda belə maraqlı çağırışlar var idi. Biz sistemi dizayn etdik və o anda nə qədər dəbdə olduğumuzu, qabaqcıl texnologiyalara nə qədər əməl etdiyimizi yoxlamaq üçün dünyanın ən yaxşı təcrübələrini tapmağa çalışdıq.

Dünya təcrübəsi

Təəccüblüdür ki, dünya telekommunikasiyasında bir dənə də olsun arayış tapmadıq.

Avropa abunəçilərin sayına və miqyasına görə, ABŞ tariflərinin düzlüyünə görə yoxa çıxıb. Çində bir şeyə baxdılar və Hindistanda bir şey tapdılar və Vodafone Hindistandan mütəxəssislər götürdülər.

Memarlığı təhlil etmək üçün onlar IBM-in rəhbərlik etdiyi Dream Team - müxtəlif sahələrdən olan memarlar topladılar. Bu insanlar nə etdiyimizi adekvat qiymətləndirə və memarlığımıza müəyyən biliklər gətirə bilərdilər.

Ölçək

Təsvir etmək üçün bir neçə rəqəm.

üçün sistem dizayn edirik Bir milyarddan çox olan 80 milyon abunəçi. Gələcək həddləri belə aradan qaldırırıq. Bu, Çini ələ keçirəcəyimizə görə deyil, IoT və M2M-in təzyiqinə görədir.

Real vaxt rejimində 300 milyon sənəd işlənib. 80 milyon abunəçimiz olsa da, həm potensial müştərilərlə, həm də debitor borclarının yığılması lazım gələrsə, bizdən ayrılanlarla işləyirik. Buna görə də real həcmlər daha böyükdür.

2 milyard əməliyyat balans gündəlik dəyişir - bunlar ödənişlər, hesablamalar, zənglər və digər hadisələrdir. 200 TB məlumat aktiv şəkildə dəyişir, bir az daha yavaş dəyişin 8 Pb məlumat, və bu arxiv deyil, bir fakturada canlı datadır. Məlumat mərkəzinə görə ölçü - 5 saytda 14 min server.

Texnologiya yığını

Biz arxitekturanı planlaşdırıb sistemi yığmağı öhdəmizə götürəndə özümüz üçün ən maraqlı və qabaqcıl texnologiyaları idxal etdik. Nəticə hər hansı bir İnternet pleyerinə və yüksək yüklü sistemlər hazırlayan korporasiyalara tanış olan texnoloji yığın oldu.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Yığın digər böyük oyunçuların yığınlarına bənzəyir: Netflix, Twitter, Viber. 6 komponentdən ibarətdir, lakin biz onu azaltmaq və birləşdirmək istəyirik.

Çeviklik yaxşıdır, lakin böyük bir korporasiyada birləşmədən yol yoxdur.

Tarantool üçün eyni Oracle-ı dəyişdirmək fikrində deyilik. Böyük şirkətlərin reallıqlarında bu, bir utopiyadır, ya da anlaşılmaz nəticə ilə 5-10 illik səlib yürüşüdür. Ancaq Cassandra və Couchbase tamamilə Tarantool ilə əvəz edilə bilər və biz buna çalışırıq.

Niyə Tarantool?

Bu verilənlər bazasını seçməyimiz üçün 4 sadə meyar var.

Sürət. MegaFon sənaye sistemlərində yük sınaqları keçirdik. Tarantool qalib gəldi - ən yaxşı performans göstərdi.

Digər sistemlərin MegaFon ehtiyaclarına cavab vermədiyini söyləmək olmaz. Mövcud yaddaş həlləri o qədər məhsuldardır ki, şirkətin ehtiyatı kifayət qədər çoxdur. Ancaq stress testi də daxil olmaqla, geridə qalanla deyil, liderlə məşğul olmaq bizim üçün maraqlıdır.

Tarantool hətta uzunmüddətli perspektivdə də şirkətin ehtiyaclarını qarşılayır.

TCO dəyəri. MegaFon həcmlərində Couchbase dəstəyi kosmik pula başa gəlir, Tarantool ilə isə vəziyyət daha gözəldir və funksionallıq baxımından yaxındır.

Seçimimizə bir qədər təsir edən başqa bir gözəl xüsusiyyət, Tarantool-un yaddaşla digər verilənlər bazalarından daha yaxşı işləməsidir. O göstərir maksimum səmərəlilik.

Etibarlılıq. MegaFon heç kimi etibarlılığa sərmayə qoyur. Buna görə də, Tarantool-a baxanda başa düşdük ki, onun tələblərimizə cavab verdiyinə əmin olmalıyıq.

Biz vaxtımızı və pulumuzu sərf etdik və Mail.ru ilə birlikdə indi bir neçə başqa şirkət tərəfindən istifadə olunan müəssisə versiyasını yaratdıq.

Tarantool-müəssisə təhlükəsizlik, etibarlılıq və giriş baxımından bizi tamamilə qane etdi.

Tərəfdaşlıq

Mənim üçün ən önəmlisi budur geliştirici ilə birbaşa əlaqə. Tarantooldan olan oğlanların rüşvət verdiyi məhz budur.

Bir oyunçuya, xüsusən də anker müştəri ilə işləyən oyunçuya gəlsəniz və bunu, bunu və bunu etmək üçün məlumat bazasına ehtiyacınız olduğunu söyləsəniz, adətən cavab verəcəkdir:

"Yaxşı, tələbləri o yığının altına qoyun - yəqin ki, nə vaxtsa onlara çatacağıq."

Çoxlarının növbəti 2-3 il üçün yol xəritəsi var və ora sığmaq demək olar ki, mümkün deyil, Tarantool tərtibatçıları isə təkcə MegaFon ilə deyil, açıqlıqla rüşvət verir və sistemini müştəriyə uyğunlaşdırır. Bu sərin və biz bunu sevirik.

Tarantool tətbiq etdiyimiz yer

Bizdə bir neçə elementdə istifadə edilən Tarantool var. Birincisi pilotdadır, biz ünvan kataloq sistemində etdik. Bir vaxtlar bunun Yandex.Maps və Google Maps-ə bənzər bir sistem olmasını istəyirdim, amma bir az fərqli oldu.

Məsələn, satış interfeysindəki ünvan kataloqu. Oracle-da düzgün ünvanı tapmaq 12-13 saniyə çəkir. - narahat nömrələr. Tarantool-a keçdikdə, Oracle-ı konsolda başqa verilənlər bazası ilə əvəz etdikdə və eyni axtarışı həyata keçirdikdə 200x sürətlənmə əldə edirik! Üçüncü hərfdən sonra şəhər görünür. İndi interfeysi elə uyğunlaşdırırıq ki, bu, birincidən sonra baş versin. Bununla belə, cavab sürəti tamamilə fərqlidir - artıq saniyələr əvəzinə millisaniyələr.

İkinci proqram iki sürətli İT adlı moda mövzusudur. Çünki hər ütüdən məsləhətçilər deyirlər ki, korporasiyalar ora getməlidir.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Burada bir infrastruktur təbəqəsi var, onun üstündə domenlər var, məsələn, telekommunikasiya kimi billinq sistemi, korporativ sistemlər, korporativ hesabatlar. Bu toxunulmamalı olan əsasdır. Bu, əlbəttə ki, mümkündür, lakin paranoid şəkildə keyfiyyəti təmin edir, çünki bu, korporasiyaya pul gətirir.

Sonra mikroservislər təbəqəsi gəlir - operatoru və ya digər oyunçunu fərqləndirən. Mikroservislər bəzi keşlər əsasında tez yaradıla bilər və orada müxtəlif domenlərdən məlumat toplaya bilər. Budur təcrübələr üçün sahə - bir şey alınmadısa, bir mikroservisi bağladı, digərini açın. Bu, həqiqətən təkmilləşdirilmiş bazara çıxma müddətini təmin edir və şirkətin etibarlılığını və sürətini artırır.

Mikroservislər, bəlkə də, MegaFon-da Tarantool-un əsas roludur.

Tarantool-dan harada istifadə etməyi planlaşdırırıq

Uğurlu billinq layihəmizi Deutsche Telekom, Svyazcom, Vodafone India-dakı transformasiya proqramları ilə müqayisə etsək, o, heyrətamiz dərəcədə dinamik və yaradıcıdır. Bu layihənin həyata keçirilməsi prosesində təkcə MegaFon və onun strukturu çevrilmədi, həm də Mail.ru-da Tarantool-müəssisə meydana çıxdı və satıcımız Nexign (keçmiş Peter-Service) BSS Box (qutulu hesablama həlli) var idi.

Bu, müəyyən mənada Rusiya bazarı üçün tarixi layihədir. Bu, Frederik Bruksun "Mifik Adam-Ay" kitabında təsvir olunanlarla müqayisə edilə bilər. O vaxt, 60-cı illərdə IBM meynfreym üçün yeni OS/360 əməliyyat sistemini hazırlamaq üçün 5 nəfəri işə götürdü. Bizdə az - 000, amma bizimkilər jiletdədir və açıq mənbədən istifadəni və yeni yanaşmaları nəzərə alaraq daha məhsuldar işləyirik.

Aşağıda faturalandırma və ya daha geniş şəkildə biznes sistemlərinin domenləri verilmişdir. Müəssisə adamları CRM-i çox yaxşı bilirlər. Hər kəsin artıq başqa sistemləri olmalıdır: Open API, API Gateway.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Açıq API

Gəlin bir daha rəqəmlərə və Open API-nin indi necə işlədiyinə baxaq. Onun yükü Saniyədə 10 əməliyyat. Mikroservislər təbəqəsini fəal şəkildə inkişaf etdirməyi və MegaFon-un ictimai API-sini qurmağı planlaşdırdığımızdan, bu xüsusi hissədə gələcəkdə daha çox artım gözləyirik. 100 əməliyyat mütləq olacaq.

SSO-nu Mail.ru ilə müqayisə edə biləcəyimizi bilmirəm - uşaqlar saniyədə 1 əməliyyat keçirirlər. Biz onların həlli ilə çox maraqlanırıq və onların təcrübəsindən öyrənməyi planlaşdırırıq - məsələn, Tarantool-dan istifadə edərək SSO-nun funksional ehtiyatını yaratmaq. İndi Mail.ru-nun tərtibatçıları bunu bizimlə edirlər.

CRM

CRM bir milyarda çatdırmaq istədiyimiz eyni 80 milyon abunəçidir, çünki artıq üç illik tarixi ehtiva edən 300 milyon sənəd var. Biz həqiqətən yeni xidmətləri səbirsizliklə gözləyirik və burada artım nöqtəsi bağlı xidmətlərdir. Bu böyüyəcək bir topdur, çünki getdikcə daha çox xidmət olacaq. Buna görə də tarix lazım olacaq, biz bunda büdrəmək istəmirik.

Faturalandırma baxımından özü faktura, müştəri alacaqları ilə işləmək ayrı bir sahəyə çevrildi. Performansı yaxşılaşdırmaq üçün, domen memarlığı memarlıq nümunəsi tətbiq edilir.

Sistem domenlərə bölünür, yük paylanır və nasazlığa dözümlülük təmin edilir. Bundan əlavə, paylanmış bir arxitektura ilə işlədik.

Qalan hər şey korporativ səviyyəli həllərdir. Zəng yaddaşı - gündə 2 mlrd, ayda 60 mlrd. Bəzən bir ay ərzində onları saymaq lazımdır və tez etmək daha yaxşıdır. Maliyyə monitorinqi - bunlar daim böyüyən və böyüyən eyni 300 milyondur: abunəçilər tez-tez bu hissəni artıraraq operatorlar arasında işləyirlər.

Mobil rabitənin ən telekom komponentidir onlayn hesablama. Bu, real vaxt rejimində zəng edib-etməmək, qərar qəbul etmək imkanı verən sistemlərdir. Burada yük saniyədə 30 əməliyyat təşkil edir, lakin məlumat ötürülməsindəki artımı nəzərə alaraq, planlaşdırırıq 250 əməliyyat, və buna görə də biz Tarantool ilə çox maraqlanırıq.

Əvvəlki şəkil Tarantool tətbiq edəcəyimiz domenlərdir. CRM-in özü, əlbəttə ki, daha genişdir və biz onu əsasda tətbiq edəcəyik.

100 milyon abunəçi ilə hesablanmış TTX rəqəmimiz məni bir memar kimi çaşdırır - bəs 101 milyon olarsa? Hər şeyi yenidən etmək? Bunun qarşısını almaq üçün biz keşlərdən istifadə edirik, eyni zamanda əlçatanlığı artırırıq.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Ümumiyyətlə, Tarantool istifadə etmək üçün iki yanaşma var. Birinci - bütün keşləri mikroservis səviyyəsində qurun. Anladığım qədər, VimpelCom bu yolla gedir, müştəri keşini yaradır.

Biz satıcılardan daha az asılıyıq, biz BSS-nin əsasını dəyişirik, ona görə də bizdə müştərilərin bir kart faylı artıq qutudan çıxıb. Amma biz onu genişləndirmək istəyirik. Buna görə də, bir az fərqli bir yanaşma tətbiq edirik - sistemlərin daxilində keşlər yaradın.

Beləliklə, daha az sinxronizasiya var - bir sistem həm önbellek, həm də əsas master mənbəyi üçün cavabdehdir.

Metod, yalnız yeniləmələrə aid olan hissələr, yəni məlumat dəyişiklikləri yeniləndikdə, tranzaksiya skeleti ilə Tarantool yanaşmasına yaxşı uyğun gəlir. Qalan hər şey başqa yerdə saxlanıla bilər. Nəhəng məlumat gölü, idarə olunmayan qlobal keş yoxdur. Keşlər sistem, məhsullar və ya müştərilər üçün və ya təmir üçün həyatı asanlaşdırmaq üçün nəzərdə tutulmuşdur. Keyfiyyətdən əsəbiləşən abunəçi zəng edəndə ona yüksək keyfiyyətlə xidmət etmək istəyirəm.

RTO və RPO

İT-də iki termin var - RTO и RPO.

Bərpa müddəti məqsədi uğursuzluqdan sonra xidmətin bərpa müddətidir. RTO = 0 o deməkdir ki, bir şey düşsə belə, xidmət işləməyə davam edir.

Bərpa nöqtəsi məqsədi məlumatların bərpa müddəti, müəyyən bir müddət ərzində nə qədər məlumat itirə biləcəyimizdir. RPO = 0 o deməkdir ki, biz məlumatları itirmirik.

Tarantool tapşırığı

Tarantool üçün bir tapşırığı həll etməyə çalışaq.

verilmiş: hamı üçün aydın proqram səbəti, məsələn, Amazonda və ya başqa yerdə. Lazımdır alış-veriş səbətinin 24 saat, həftənin 7 günü və ya vaxtın 99,99%-i işləməsi üçün. Bizə gələn sifarişlər qaydasında saxlanılmalıdır, çünki biz təsadüfi olaraq abunəçinin əlaqəsini yandıra və ya söndürə bilmərik - hər şey ciddi şəkildə ardıcıl olmalıdır. Əvvəlki abunə sonrakılara təsir edir, buna görə də məlumatlar vacibdir - heç bir şey itirilməməlidir.

qərar. Bunu baş-başa həll etməyə cəhd edə və verilənlər bazası tərtibatçılarından soruşa bilərsiniz, lakin problemi riyazi həll etmək mümkün deyil. Teoremləri, qorunma qanunlarını, kvant fizikasını xatırlaya bilərsiniz, amma niyə - verilənlər bazası səviyyəsində həll edilə bilməz.

Yaxşı köhnə memarlıq yanaşması burada işləyir - mövzu sahəsini yaxşı bilməli və bu tapmacanı onun hesabına həll etməlisiniz.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Bizim həllimiz: Paylanmış Tarantool Bilet Reyestrinin yaradılması – Geo-Paylaşılmış Klaster. Diaqramda bunlar üç fərqli məlumat emalı mərkəzidir - ikisi Urala, biri Uraldan kənara və biz bütün tətbiqləri bu mərkəzlərə paylayırıq.

Hazırda İT sahəsində liderlərdən biri hesab edilən Netflix-in 2012-ci ilə qədər yalnız bir məlumat mərkəzi var idi. Dekabrın 24-də Katolik Milad bayramı ərəfəsində bu məlumat mərkəzi uzandı. Kanada və ABŞ-da istifadəçilər sevimli filmlərindən məhrum olublar, çox üzülüblər və bu barədə sosial şəbəkələrdə yazıblar. Netflix-in indi qərb-şərq sahillərində üç və Qərbi Avropada bir məlumat mərkəzi var.

Biz əvvəlcə geo-paylanmış həll qururuq - nasazlıqlara dözümlülük bizim üçün vacibdir.

Beləliklə, bir çoxluq var, amma RPO = 0 və RTO = 0 haqqında nə demək olar? Həll sadədir, bu da mövzudan asılıdır.

Tətbiqlərdə nə vacibdir? İki hissə: səbəti atmaq SƏBƏTƏ satınalma qərarı vermək və SONRA. Telekommunikasiyada DO hissəsi adətən adlanır sifariş tutmaq və ya sifariş danışıqları. Telekomda bu, onlayn mağazadan daha çətin ola bilər, çünki orada müştəriyə xidmət göstərilməli, 5 seçim təklif edilməlidir və bunların hamısı bir müddət olur, amma səbət doldurulur. Bu nöqtədə uğursuzluq mümkündür, lakin qorxulu deyil, çünki bu, bir insanın nəzarəti altında interaktiv şəkildə baş verir.

Moskva məlumat mərkəzi birdən uğursuz olarsa, avtomatik olaraq başqa bir məlumat mərkəzinə keçərsə, biz işləməyə davam edəcəyik. Nəzəri olaraq, səbətdə bir məhsul itə bilər, ancaq görürsən, yenidən səbətə əlavə edin və işləməyə davam edin. Bu halda RTO = 0.

Eyni zamanda, ikinci bir seçim var: "göndər" düyməsini kliklədikdə, məlumatların itirilməməsini istəyirik. Bu andan avtomatlaşdırma işə başlayır - bu artıq RPO = 0-dır. Bu iki fərqli nümunənin bir halda istifadəsi yalnız bir dəyişdirilə bilən master ilə geo-paylanmış klaster, digər halda bir növ kvorum qeydi ola bilər. Şablonlar fərqli ola bilər, lakin biz problemi həll edirik.

Bundan əlavə, tətbiqlərin paylanmış reyestrinə malik olmaqla, biz də hamısını miqyaslandıra bilərik - bu reyestrə daxil olan çoxlu dispetçer və icraçılarımız var.

Yeni nəsil faturalandırma arxitekturası: Tarantool-a keçidlə transformasiya

Cassandra və Tarantool Birlikdə

Başqa bir hal var - "qalıqların nümayişi". Cassandra və Tarantool-un birgə istifadəsi ilə bağlı maraqlı bir hadisədir.

Biz Cassandra-dan istifadə edirik, çünki gündə 2 milyard zəng limit deyil və daha çox olacaq. Marketoloqlar trafiki mənbəyə görə rəngləndirməyi sevirlər, məsələn, sosial şəbəkələrdə daha çox təfərrüat görünür. Bütün bunlar hekayəni əlavə edir.

Cassandra, istənilən həcmə üfüqi şəkildə miqyas verməyə imkan verir.

Kassandra ilə özümüzü rahat hiss edirik, lakin onun bir problemi var - oxumaqda yaxşı deyil. Qeyddə hər şey qaydasındadır, saniyədə 30 problem deyil - oxumaqda problem.

Buna görə də, keş ilə bağlı problem ortaya çıxdı və eyni zamanda biz aşağıdakı problemi həll etdik: köhnə ənənəvi hal var, onlayn hesablaşmadan keçiddən avadanlıq Cassandra-ya yüklədiyimiz fayllara gəldikdə. Biz bu faylların etibarlı endirilməsi problemi ilə mübarizə aparmışıq, hətta IBM menecerinin məsləhəti ilə tətbiq edilmiş fayl ötürülməsi - məsələn, TCP deyil, UDP protokolundan istifadə edərək fayl ötürülməsini səmərəli idarə edən həllər var. Bu yaxşıdır, amma hələ dəqiqələr var və biz hamısını yükləyənə qədər zəng mərkəzindəki operator müştəriyə cavab verə bilməz, balansına nə baş verdi - gözləməliyik.

Bunun baş verməməsi üçün biz paralel funksional ehtiyat tətbiq edin. Kafka vasitəsilə Tarantool-a bir hadisə göndərdikdə, aqreqatları real vaxtda yenidən hesablayaraq, məsələn, bu gün üçün alırıq. nağd pul qalıqları, istənilən sürətlə balans verə bilən, məsələn, saniyədə 100 min əməliyyat və eyni 2 saniyə.

Məqsəd ondan ibarətdir ki, zəng etdikdən sonra 2 saniyədən sonra şəxsi hesabınızda nəinki dəyişdirilmiş balans, həm də onun niyə dəyişdiyi barədə məlumat olacaq.

Nəticə

Bunlar Tarantool-dan istifadə nümunələri idi. Mail.ru-nun açıqlığı, müxtəlif işlərə baxmağa hazır olması çox xoşumuza gəldi.

BCG və ya McKinsey, Accenture və ya IBM məsləhətçiləri üçün bizi yeni bir şeylə təəccübləndirmək onsuz da çətindir - onların təklif etdiklərinin çoxunu biz ya artıq edirik, ya da etmişik, ya da etməyi planlaşdırırıq. Düşünürəm ki, Tarantool texnologiya yığınımızda öz layiqli yerini tutacaq və bir çox mövcud texnologiyaları əvəz edəcək. Biz bu layihənin inkişafının aktiv mərhələsindəyik.

Oleq və Andreyin hesabatı keçən il Tarantool Konfransında ən yaxşılardan biridir və iyunun 17-də Oleq İvlev çıxış edəcək. T+ Konfransı 2019 hesabatla "Niyə Tarantool Müəssisədə". Həmçinin, Aleksandr Deulin MegaFon-dan təqdimatla çıxış edəcək "Tarantool Caches və Oracle Replication". Nəyin dəyişdiyini, hansı planların həyata keçirildiyini öyrənin. Qoşulun - konfrans pulsuzdur, sadəcə etməlisiniz qeydiyyatdan... Hər şey hesabatlar qəbul edilir və konfrans proqramı formalaşır: yeni hallar, Tarantool-dan istifadənin yeni təcrübəsi, memarlıq, müəssisə, dərs vəsaitləri və mikroservislər.

Mənbə: www.habr.com

Добавить комментарий