{"id":37650,"date":"2019-10-31T22:18:50","date_gmt":"2019-10-31T19:18:50","guid":{"rendered":"https:\/\/prohoster.info\/blog\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool\/"},"modified":"2019-10-31T22:18:50","modified_gmt":"2019-10-31T19:18:50","slug":"arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool","title":{"rendered":"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dlaczego takie korporacje, jak MegaFon, potrzebuj\u0105 Tarantoola w billing? Z zewn\u0105trz wydaje si\u0119, \u017ce zazwyczaj pojawia si\u0119 dostawca, przynosi jak\u0105\u015b du\u017c\u0105 skrzynk\u0119, wk\u0142ada wtyczk\u0119 do gniazdka \u2014 i oto jest billing! Kiedy\u015b tak by\u0142o, ale teraz to ju\u017c archaizm, a takie dinozaury ju\u017c wymar\u0142y lub wymieraj\u0105. Pocz\u0105tkowo billing to system do wystawiania rachunk\u00f3w \u2014 kalkulator lub liczyd\u0142o. W nowoczesnym telecomie \u2014 to <b>system automatyzacji ca\u0142ego cyklu \u017cycia interakcji z abonentem, od zawarcia umowy do rozwi\u0105zania<\/b>, w tym real-time taryfikacj\u0119, przyjmowanie p\u0142atno\u015bci i wiele wi\u0119cej. Billing w firmach telekomunikacyjnych przypomina robota bojowego \u2014 du\u017cego, pot\u0119\u017cnego i obwieszonego broni\u0105.<\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/9ca92c53ac5ba33179e1fcfd6bd11558.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA co ma wsp\u00f3lnego z tym Tarantool? O tym opowiedz\u0105 <b>Oleg Iwlew<\/b> i\u00a0<b>Andriej Kniaziev<\/b>. Oleg \u2014 g\u0142\u00f3wny architekt firmy <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/megafon\/\">MegaFon<\/a><\/noindex> z ogromnym do\u015bwiadczeniem w pracy w zagranicznych firmach, Andriej \u2014 dyrektor ds. system\u00f3w biznesowych. Z wyst\u0105pienia ich raportu na\u00a0<noindex><a rel=\"nofollow\" href=\"http:\/\/conf.tarantool.io\/2018\">Tarantool Conference 2018<\/a><\/noindex>\u00a0dowiesz si\u0119, po co potrzebna jest R&amp;D w korporacjach, czym jest Tarantool, jak pu\u0142apka pionowego skalowania i globalizacja sta\u0142y si\u0119 przes\u0142ankami pojawienia si\u0119 tej bazy danych w firmie, o wyzwaniach technologicznych, transformacji architektury i czym technostek MegaFon przypomina Netflix, Google i Amazon.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<center><div class=\"youtube-placeholder\" data-id=\"bW24mJwSllQ\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/bW24mJwSllQ\/hqdefault.jpg\" alt=\"Odtwarzaj wideo\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<h2>Projekt 'Jednolity billing'<\/h2>\n<p>\nProjekt, o kt\u00f3rym b\u0119dzie mowa, nazywa si\u0119 'Jednolity billing'. To w nim Tarantool ujawni\u0142 swoje najlepsze cechy. <\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/5639a301647b9afd07304ed423f02669.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWzrost wydajno\u015bci Hi-End sprz\u0119tu nie nad\u0105\u017ca\u0142 za wzrostem bazy abonent\u00f3w i liczby us\u0142ug, oczekiwano dalszego wzrostu liczby abonent\u00f3w i us\u0142ug dzi\u0119ki M2M, IoT, a charakterystyka filii prowadzi\u0142a do pogorszenia time-to-market. Firma podj\u0119\u0142a decyzj\u0119 o stworzeniu jednolitego systemu biznesowego z unikaln\u0105 modu\u0142ow\u0105 architektur\u0105 \u015bwiatowej klasy, w zamian za 8 r\u00f3\u017cnych aktualnych system\u00f3w billingowych.<\/p>\n<p><b>MegaFon to osiem firm w jednej<\/b>. W 2009 roku zako\u0144czono reorganizacj\u0119: filie w ca\u0142ej Rosji po\u0142\u0105czy\u0142y si\u0119 w jedn\u0105 firm\u0119 OAO 'MegaFon' (obecnie PAO). W ten spos\u00f3b w firmie pojawi\u0142o si\u0119 8 system\u00f3w billingowych z w\u0142asnymi 'customowymi' rozwi\u0105zaniami, cechami filia\u0142\u00f3w oraz r\u00f3\u017cn\u0105 struktur\u0105 organizacyjn\u0105, IT i marketingiem.<\/p>\n<p>Wszystko by\u0142o w porz\u0105dku, a\u017c do momentu, gdy trzeba by\u0142o uruchomi\u0107 jeden wsp\u00f3lny federalny produkt. Pojawi\u0142o si\u0119 wiele trudno\u015bci: u niekt\u00f3rych taryfikacja zaokr\u0105gla\u0142a w g\u00f3r\u0119, u innych w d\u00f3\u0142, a jeszcze inni stosowali \u015bredni\u0105 arytmetyczn\u0105. Takich sytuacji by\u0142o tysi\u0105ce.<\/p>\n<p>Pomimo tego, \u017ce wersja systemu billingowego by\u0142a jedna, jeden dostawca, ustawienia rozchodzi\u0142y si\u0119 tak, \u017ce by\u0142o trudno to poskleja\u0107. Pr\u00f3bowali\u015bmy ograniczy\u0107 ich liczb\u0119 i natkn\u0119li\u015bmy si\u0119 na drugi problem, kt\u00f3ry jest znany wielu korporacjom.<\/p>\n<p><b>Pionowe skalowanie<\/b>. Nawet najlepszy sprz\u0119t w tamtym czasie nie odpowiada\u0142 potrzebom. W pracy u\u017cywano sprz\u0119tu Hewlett-Packard, z linii Superdome Hi-End, ale nie zaspokaja\u0142 on potrzeb nawet dw\u00f3ch oddzia\u0142\u00f3w. Chcieli\u015bmy poziomego skalowania bez du\u017cych koszt\u00f3w operacyjnych i kapita\u0142owych.<\/p>\n<p><b>Oczekiwanie na wzrost liczby abonent\u00f3w i us\u0142ug<\/b>. Konsultanci od lat przynosili do \u015bwiata telekomunikacji opowie\u015bci o IoT i M2M: nadejd\u0105 czasy, kiedy w ka\u017cdym telefonie i \u017celazku b\u0119dzie jedna karta SIM, a w lod\u00f3wce po dwie. Dzi\u015b mamy jedn\u0105 liczb\u0119 abonent\u00f3w, a w najbli\u017cszej przysz\u0142o\u015bci b\u0119dzie ich znacznie wi\u0119cej.<\/p>\n<h2>Wyzwania technologiczne<\/h2>\n<p>\nTe cztery powody popycha\u0142y nas ku powa\u017cnym zmianom. By\u0142 wyb\u00f3r mi\u0119dzy modernizacj\u0105 systemu a projektowaniem od podstaw. D\u0142ugo my\u015bleli\u015bmy, podejmowali\u015bmy powa\u017cne decyzje, przeprowadzali\u015bmy przetargi. Ostatecznie postanowili\u015bmy zaprojektowa\u0107 od pocz\u0105tku i wzi\u0119li\u015bmy si\u0119 za ciekawe wyzwania - wyzwania technologiczne.<\/p>\n<h3>Skalowalno\u015b\u0107<\/h3>\n<p>\nJe\u015bli wcze\u015bniej by\u0142o, powiedzmy, <b>8 billing\u00f3w po 15 mln abonent\u00f3w<\/b>, a teraz mia\u0142o by\u0107 <b>100 mln abonent\u00f3w i wi\u0119cej<\/b>\u00a0\u2014 obci\u0105\u017cenie jest znacznie wy\u017csze.<\/p>\n<blockquote><p>Stali\u015bmy si\u0119 por\u00f3wnywalni pod wzgl\u0119dem skali z du\u017cymi graczami internetowymi, jak Mail.ru czy Netflix.<\/p><\/blockquote>\n<p>\nJednak dalszy wzrost obci\u0105\u017cenia i bazy abonent\u00f3w postawi\u0142 przed nami powa\u017cne wyzwania.<\/p>\n<h3>Geografia naszego rozleg\u0142ego kraju<\/h3>\n<p>\nMi\u0119dzy Kaliningradem a W\u0142adywostokiem <b>7500 km i 10 stref czasowych<\/b>. Pr\u0119dko\u015b\u0107 \u015bwiat\u0142a jest sko\u0144czona, a przy takich odleg\u0142o\u015bciach op\u00f3\u017anienia s\u0105 ju\u017c znacz\u0105ce. 150 ms na najnowocze\u015bniejszych kana\u0142ach optycznych to za du\u017co dla taryfikacji w czasie rzeczywistym, zw\u0142aszcza takiej, jak teraz w telekomunikacji w Rosji. Ponadto, nale\u017cy si\u0119 zaktualizowa\u0107 w ci\u0105gu jednego dnia roboczego, a przy r\u00f3\u017cnych strefach czasowych to problem.<\/p>\n<p>Nie tylko oferujemy us\u0142ugi abonamentowe, mamy z\u0142o\u017cone taryfy, pakiety i r\u00f3\u017cne modyfikatory. Musimy nie tylko zezwoli\u0107 lub zabroni\u0107 abonentowi na telefonowanie, ale r\u00f3wnie\u017c przydzieli\u0107 mu okre\u015blon\u0105 kwot\u0119 - oblicza\u0107 po\u0142\u0105czenia i dzia\u0142ania w czasie rzeczywistym w taki spos\u00f3b, \u017ceby ich nie zauwa\u017cy\u0142.<\/p>\n<h3>Odporno\u015b\u0107 na awarie<\/h3>\n<p><\/p>\n<blockquote><p>To jest odwrotna strona centralizacji.<\/p><\/blockquote>\n<p>\nJe\u015bli zbieramy wszystkich abonent\u00f3w w jednym systemie, to wszelkie awarie i katastrofy s\u0105 katastrofalne dla biznesu. Dlatego projektujemy system tak, aby wyeliminowa\u0107 wp\u0142yw awarii na ca\u0142\u0105 baz\u0119 abonent\u00f3w.<\/p>\n<p>To jest znowu konsekwencja rezygnacji z pionowego skalowania. Kiedy przeszli\u015bmy na poziome skalowanie, zwi\u0119kszyli\u015bmy liczb\u0119 serwer\u00f3w z setek do tysi\u0119cy. Musimy nimi zarz\u0105dza\u0107, budowa\u0107 wymienno\u015b\u0107, automatycznie rezerwowa\u0107 infrastruktur\u0119 IT i przywraca\u0107 rozproszony system.<\/p>\n<p>Przed nami sta\u0142y takie interesuj\u0105ce wyzwania. Zaprojektowali\u015bmy system i w tym momencie pr\u00f3bowali\u015bmy znale\u017a\u0107 \u015bwiatowe najlepsze praktyki, aby sprawdzi\u0107, na ile jeste\u015bmy na bie\u017c\u0105co, na ile \u015bledzimy nowoczesne technologie.<\/p>\n<h2>\u015awiatowe do\u015bwiadczenie<\/h2>\n<p><\/p>\n<blockquote><p>Zdziwiaj\u0105ce, ale w \u015bwiatowym telekomie nie znale\u017ali\u015bmy \u017cadnego odniesienia.<\/p><\/blockquote>\n<p>\nEuropie zabrak\u0142o liczby abonent\u00f3w i skali, USA - przez p\u0142asko\u015b\u0107 swoich taryf. Co\u015b obejrzeli\u015bmy w Chinach, a co\u015b znale\u017ali\u015bmy w Indiach i wzi\u0119li\u015bmy specjalist\u00f3w z Vodafone India.<\/p>\n<p>Aby przeanalizowa\u0107 architektur\u0119, zebrali\u015bmy Dream Team kierowany przez IBM - architekt\u00f3w z r\u00f3\u017cnych dziedzin. Ci ludzie mogli adekwatnie oceni\u0107, co robimy i wnie\u015b\u0107 do naszej architektury pewne wiedz\u0119.<\/p>\n<h2>Skalowanie<\/h2>\n<p>\nKilka liczb dla ilustracji.<\/p>\n<p>Projektujemy system na <b>80 mln abonent\u00f3w z zapasem na miliard.<\/b>. Tak rozpinamy przysz\u0142e progi. To nie dlatego, \u017ce zamierzamy podbi\u0107 Chiny, ale z powodu naporu IoT i M2M.<\/p>\n<p><b>300 mln dokument\u00f3w przetwarzanych w czasie rzeczywistym.<\/b>. Chocia\u017c mamy 80 mln abonent\u00f3w, pracujemy r\u00f3wnie\u017c z potencjalnymi klientami oraz z tymi, kt\u00f3rzy odeszli, je\u015bli trzeba odzyska\u0107 nale\u017cno\u015bci. Dlatego rzeczywiste wolumeny s\u0105 znacznie wy\u017csze.<\/p>\n<p><b>2 mld transakcji<\/b> codziennie zmieniaj\u0105 saldo - to p\u0142atno\u015bci, naliczenia, po\u0142\u0105czenia i inne zdarzenia.\u00a0<b>200 Tb danych zmienia si\u0119 aktywnie,<\/b>nieco wolniej zmieniaj\u0105 si\u0119 <b>8 Pb danych.<\/b>, a to nie jest archiwum, a \u017cywe dane w jednym bilingu. Skala po DC \u2013 <b>5 tysi\u0119cy serwer\u00f3w na 14 lokalizacjach<\/b>.<\/p>\n<h2>Stos technologiczny<\/h2>\n<p>\nKiedy zaplanowali\u015bmy architektur\u0119 i zabrali\u015bmy si\u0119 do budowy systemu, zaimportowali\u015bmy najciekawsze i najnowocze\u015bniejsze technologie. Powsta\u0142 stos technologiczny, znany ka\u017cdemu graczowi internetu oraz korporacjom, kt\u00f3re tworz\u0105 systemy o wysokim obci\u0105\u017ceniu. <\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/22b6fcab2618455b615534f4bb4d9e5e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nStos jest analogiczny do stos\u00f3w innych du\u017cych graczy: Netflix, Twitter, Viber. Sk\u0142ada si\u0119 z 6 komponent\u00f3w, ale chcemy go upro\u015bci\u0107 i zunifikowa\u0107.<\/p>\n<blockquote><p>Elastyczno\u015b\u0107 to dobrze, ale w du\u017cej korporacji bez unifikacji nie da si\u0119 dzia\u0142a\u0107.<\/p><\/blockquote>\n<p>\nNie zamierzamy wymienia\u0107 Oracle na Tarantool. W realiach du\u017cych firm to utopia, czy krucjata trwaj\u0105ca 5-10 lat z niepewnym wynikiem. Ale Cassandr\u0119 i Couchbase mo\u017cna ca\u0142kiem dobrze zast\u0105pi\u0107 Tarantool, i do tego d\u0105\u017cymy.<\/p>\n<h2>Dlaczego Tarantool?<\/h2>\n<p>\nS\u0105 4 proste kryteria, dlaczego wybrali\u015bmy t\u0119 baz\u0119 danych.<\/p>\n<p><b>Szybko\u015b\u0107<\/b>. Przeprowadzili\u015bmy testy obci\u0105\u017ceniowe na przemys\u0142owych systemach MegaFon. Tarantool wygra\u0142 \u2013 pokaza\u0142 najlepsz\u0105 wydajno\u015b\u0107.<\/p>\n<p>Nie mo\u017cna powiedzie\u0107, \u017ce inne systemy nie zaspokajaj\u0105 potrzeb MegaFon. Aktualne rozwi\u0105zania pami\u0119ciowe s\u0105 tak wydajne, \u017ce zapas wystarcza firmie w zupe\u0142no\u015bci. Ale interesuje nas wsp\u00f3\u0142praca z liderem, a nie z tym, kto pozostaje w tyle, w tym r\u00f3wnie\u017c z test\u00f3w obci\u0105\u017ceniowych.<\/p>\n<blockquote><p>Tarantool zaspokaja potrzeby firmy nawet w d\u0142ugoterminowej perspektywie.<\/p><\/blockquote>\n<p>\n<b>Koszt TCO<\/b>. Wsparcie Couchbase przy wolumenach MegaFon kosztuje kosmiczne pieni\u0105dze, z Tarantool sytuacja jest znacznie przyjemniejsza, a pod wzgl\u0119dem funkcjonalno\u015bci s\u0105 bliskie.<\/p>\n<p>Jeszcze jedna mi\u0142a cecha, kt\u00f3ra nieco wp\u0142yn\u0119\u0142a na nasz wyb\u00f3r \u2013 Tarantool lepiej ni\u017c inne bazy pracuje z pami\u0119ci\u0105. Pokazuje <b>maksymaln\u0105 efektywno\u015b\u0107<\/b>.<\/p>\n<p><b>Niezawodno\u015b\u0107<\/b>. MegaFon inwestuje w niezawodno\u015b\u0107, chyba jak nikt inny. Dlatego, gdy spojrzeli\u015bmy na Tarantool, zrozumieli\u015bmy, \u017ce musimy zrobi\u0107 wszystko, aby spe\u0142nia\u0142 nasze wymagania.<\/p>\n<p>Zainwestowali\u015bmy sw\u00f3j czas i finanse, i razem z Mail.ru stworzyli\u015bmy wersj\u0119 enterprise, kt\u00f3ra jest ju\u017c u\u017cywana przez kilka innych firm.<\/p>\n<blockquote><p>Tarantool-enterprise w pe\u0142ni zaspokoi\u0142 nasze potrzeby w zakresie bezpiecze\u0144stwa, niezawodno\u015bci i logowania.<\/p><\/blockquote>\n<p><\/p>\n<h3>Partnerstwo<\/h3>\n<p>\nNajwa\u017cniejsze dla mnie \u2013 <b>bezpo\u015bredni kontakt z deweloperem<\/b>. To jest w\u0142a\u015bnie to, czym zesp\u00f3\u0142 Tarantool nas uj\u0105\u0142.<\/p>\n<p>Kiedy przychodzisz do gracza, szczeg\u00f3lnie tego, kt\u00f3ry pracuje z klientem kluczowym, i m\u00f3wisz, \u017ce potrzebujesz, aby baza danych potrafi\u0142a to, to i tamto, zazwyczaj odpowiada:<\/p>\n<p><i>\u2014 Dobrze, w\u0142\u00f3\u017c wymagania na d\u00f3\u0142 tej sterty \u2014 mo\u017ce kiedy\u015b do nich dotrzemy.<\/i><\/p>\n<p>Wielu ma plan dzia\u0142ania na najbli\u017csze 2-3 lata, i wkomponowanie si\u0119 w to jest praktycznie niemo\u017cliwe, a programi\u015bci Tarantool przyci\u0105gaj\u0105 otwarto\u015bci\u0105, nie tylko z MegaFonem, i adaptuj\u0105 sw\u00f3j system pod klienta. To \u015bwietne i bardzo nam si\u0119 podoba.<\/p>\n<h2>Gdzie zastosowali\u015bmy Tarantool<\/h2>\n<p>\nTarantool jest u nas wykorzystywany w kilku elementach. <b>Pierwsze \u2014 w pilocie<\/b>, kt\u00f3ry zrealizowali\u015bmy w systemie katalogu adresowego. W swoim czasie chcia\u0142em, aby to by\u0142 system przypominaj\u0105cy Yandex.Maps i Google Maps, ale wysz\u0142o to nieco inaczej. <\/p>\n<p>Na przyk\u0142ad katalog adresowy w interfejsie sprzeda\u017cy. W Oracle wyszukiwanie potrzebnego adresu zajmuje 12-13 s \u2014 nieprzyjemne liczby. Kiedy prze\u0142\u0105czamy si\u0119 na Tarantool, zast\u0119pujemy Oracle inn\u0105 baz\u0105 danych w konsoli i wykonujemy te same wyszukiwania, uzyskujemy przyspieszenie 200 razy! Miasto pojawia si\u0119 po trzeciej literze. Teraz dostosowujemy interfejs, aby to nast\u0119powa\u0142o po pierwszej. Niemniej jednak, czas reakcji jest ca\u0142kowicie inny \u2014 to ju\u017c milisekundy zamiast sekund.<\/p>\n<p><b>Drugie zastosowanie \u2014 modny temat, kt\u00f3ry nazywa si\u0119 IT o dw\u00f3ch pr\u0119dko\u015bciach<\/b>. Wszystko dlatego, \u017ce konsultanci z ka\u017cdego k\u0105ta m\u00f3wi\u0105, \u017ce korporacje powinny i\u015b\u0107 w tym kierunku.<\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/f9fa9e342e57f1483b1a8ea0b31bd9ae.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTutaj jest warstwa infrastruktury, nad ni\u0105 domeny, na przyk\u0142ad system billingowy, jak u telekom\u00f3w, systemy korporacyjne, raportowanie korporacyjne. To jest rdze\u0144, kt\u00f3rego nie nale\u017cy rusza\u0107. Oczywi\u015bcie mo\u017cna, ale paranoicznie zapewniaj\u0105c jako\u015b\u0107, poniewa\u017c to przynosi pieni\u0105dze korporacji.<\/p>\n<p>Dalej jest warstwa mikroserwis\u00f3w \u2014 to, co r\u00f3\u017cnicuje operatora lub innego gracza. Mikroserwisy mo\u017cna szybko tworzy\u0107 na podstawie pewnych pami\u0119ci podr\u0119cznych, pobieraj\u0105c dane z r\u00f3\u017cnych domen. Tutaj <b>jest pole do eksperyment\u00f3w<\/b>\u00a0\u2014 je\u015bli co\u015b nie wysz\u0142o, zamykasz jeden mikroserwis, otwierasz inny. To naprawd\u0119 zapewnia zwi\u0119kszony time-to-market oraz zwi\u0119ksza niezawodno\u015b\u0107 i szybko\u015b\u0107 firmy.<\/p>\n<blockquote><p>Mikroserwisy to chyba g\u0142\u00f3wna rola Tarantool w MegaFon. <\/p><\/blockquote>\n<p><\/p>\n<h2>Gdzie planujemy zastosowa\u0107 Tarantool<\/h2>\n<p>\nPor\u00f3wnuj\u0105c nasz udany projekt systemu billingowego z programami transformacyjnymi w Deutsche Telekom, Svyaznoy i Vodafone India, jest on zadziwiaj\u0105co dynamiczny i kreatywny. W trakcie realizacji tego projektu nie tylko MTS i jego struktura uleg\u0142y transformacji, ale r\u00f3wnie\u017c pojawi\u0142 si\u0119 Tarantool-enterprise w Mail.ru, a nasz dostawca Nexign (wcze\u015bniej 'Peterservice') \u2014 BSS Box (gotowe rozwi\u0105zanie billingowe).<\/p>\n<p>To w pewnym sensie historyczny projekt dla rosyjskiego rynku. Mo\u017cna go por\u00f3wna\u0107 do tego, co opisano w ksi\u0105\u017cce Fredericka Brooksa \u201eMityczny cz\u0142owiek-miesi\u0105c\u201d. W\u00f3wczas, w latach 60-tych, do opracowania nowego systemu operacyjnego OS\/360 dla mainframe'\u00f3w IBM zaanga\u017cowano 5000 os\u00f3b. My mamy mniej\u2014 1800, ale z naszymi w pasiakach, bior\u0105c pod uwag\u0119 u\u017cycie open source i nowe podej\u015bcia, pracujemy efektywniej.<\/p>\n<p>Poni\u017cej przedstawione s\u0105 domeny billingowe, lub szerzej \u2014 systemy biznesowe. Ludzie z enterprise doskonale znaj\u0105 CRM. Inne systemy powinny by\u0107 ju\u017c u wszystkich: Open API, API Gateway.<\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/7b9bf49f01aecb626e0f65f035c76ff0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Open API<\/h3>\n<p>\nPrzyjrzyjmy si\u0119 jeszcze raz liczbom i temu, jak obecnie dzia\u0142a Open API. Jego obci\u0105\u017cenie to <b>10 000 transakcji na sekund\u0119<\/b>. Poniewa\u017c planujemy aktywnie rozwija\u0107 warstw\u0119 mikroserwis\u00f3w i budowa\u0107 publiczne API MTS, spodziewamy si\u0119 wi\u0119kszego wzrostu w przysz\u0142o\u015bci w\u0142a\u015bnie w tej cz\u0119\u015bci.\u00a0<b>100 000 transakcji z pewno\u015bci\u0105 b\u0119dzie<\/b>.<\/p>\n<p>Nie wiem, czy dor\u00f3wnamy w SSO Mail.ru \u2014 oni maj\u0105 podobno 1 000 0000 transakcji na sekund\u0119. Ich rozwi\u0105zanie jest dla nas niezwykle interesuj\u0105ce i planujemy przej\u0105\u0107 ich do\u015bwiadczenia \u2014 na przyk\u0142ad tworz\u0105c funkcjonalny rezerwowy SSO z pomoc\u0105 Tarantool. Obecnie programi\u015bci z Mail.ru zajmuj\u0105 si\u0119 tym u nas.<\/p>\n<h2>CRM<\/h2>\n<p>\nCRM to ci sami 80 mln abonent\u00f3w, kt\u00f3rych chcemy doprowadzi\u0107 do miliarda, poniewa\u017c ju\u017c jest 300 mln dokument\u00f3w, kt\u00f3re obejmuj\u0105 trzyletni\u0105 histori\u0119. Rzeczywi\u015bcie czekamy na nowe us\u0142ugi, a tutaj <b>punktem wzrostu s\u0105 us\u0142ugi pod\u0142\u0105czone<\/b>. To sfera, kt\u00f3ra b\u0119dzie ros\u0142a, poniewa\u017c b\u0119dzie coraz wi\u0119cej us\u0142ug. W zwi\u0105zku z tym potrzebna b\u0119dzie historia, nie chcemy na tym potkn\u0105\u0107.<\/p>\n<p>Sam billing w zakresie wystawiania faktur, pracy z zad\u0142u\u017ceniem klient\u00f3w <b>przekszta\u0142ci\u0142 si\u0119 w oddzieln\u0105 domen\u0119<\/b>. Aby poprawi\u0107 wydajno\u015b\u0107, <b>zastosowano architektoniczny wzorzec architektury domenowej.<\/b>.<\/p>\n<blockquote><p>System jest podzielona na domeny, obci\u0105\u017cenie jest roz\u0142o\u017cone, a niezawodno\u015b\u0107 zapewniona. Dodatkowo przeprowadzono prace nad architektur\u0105 rozproszon\u0105.<\/p><\/blockquote>\n<p>\nWszystko inne to rozwi\u0105zania klasy enterprise. W magazynie po\u0142\u0105cze\u0144 \u2013 <b>2 miliardy dziennie<\/b>, 60 miliard\u00f3w miesi\u0119cznie. Czasami trzeba je przeliczy\u0107 za miesi\u0105c, wi\u0119c lepiej szybko. <b>Monitorowanie finansowe<\/b>\u00a0to te 300 milion\u00f3w, kt\u00f3re stale rosn\u0105: abonenci cz\u0119sto przechodz\u0105 mi\u0119dzy operatorami, zwi\u0119kszaj\u0105c t\u0119 cz\u0119\u015b\u0107.<\/p>\n<p>Najbardziej telekomunikacyjnym sk\u0142adnikiem z mobilnej komunikacji jest <b>online'owe naliczanie op\u0142at<\/b>. To s\u0105 systemy, kt\u00f3re pozwalaj\u0105 na wykonywanie lub nie wykonywanie po\u0142\u0105cze\u0144, podejmuj\u0105 decyzje w czasie rzeczywistym. Tutaj obci\u0105\u017cenie wynosi 30 000 transakcji na sekund\u0119, ale bior\u0105c pod uwag\u0119 wzrost transferu danych, planujemy <b>250 000 transakcji<\/b>, dlatego bardzo interesujemy si\u0119 Tarantool.<\/p>\n<p>Poprzedni obrazek to te domeny, gdzie planujemy zastosowa\u0107 Tarantool. Sam CRM, oczywi\u015bcie, jest szerszy i zamierzamy go zastosowa\u0107 w samym j\u0105drze. <\/p>\n<p>Moja obliczeniowa liczba TTH w wysoko\u015bci 100 milion\u00f3w abonent\u00f3w niepokoi mnie jako architekta \u2013 a co je\u015bli 101 milion\u00f3w? Znowu wszystko na nowo? Aby tego unikn\u0105\u0107, stosujemy cache, jednocze\u015bnie zwi\u0119kszaj\u0105c dost\u0119pno\u015b\u0107.<\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/64cd6ce61687c209e6e35daf56d66dd1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOg\u00f3lnie rzecz bior\u0105c, istniej\u0105 dwa podej\u015bcia do zastosowania Tarantool. Pierwsze to <b>budowanie wszystkich cache'y na poziomie mikrous\u0142ug.<\/b>Z tego, co rozumiem, tym szlakiem idzie VympelCom, tworz\u0105c cache klient\u00f3w.<\/p>\n<p>My jeste\u015bmy mniej zale\u017cni od dostawc\u00f3w, zmieniamy rdze\u0144 BSS, dlatego mamy wsp\u00f3ln\u0105 kartotek\u0119 klient\u00f3w ju\u017c z pude\u0142ka. Ale chcemy j\u0105 rozszerzy\u0107. Dlatego stosujemy nieco inne podej\u015bcie \u2013 <b> robimy cache wewn\u0105trz system\u00f3w<\/b>.<\/p>\n<blockquote><p>W ten spos\u00f3b jest mniej desynchronizacji \u2013 jeden system odpowiada zar\u00f3wno za cache, jak i za g\u0142\u00f3wne \u017ar\u00f3d\u0142o danych.<\/p><\/blockquote>\n<p>\nMetoda ta dobrze wsp\u00f3\u0142pracuje z podej\u015bciem Tarantool z transakcyjn\u0105 struktur\u0105, gdy aktualizowane s\u0105 tylko cz\u0119\u015bci zwi\u0105zane z aktualizacjami, czyli zmiany danych. Wszystko inne mo\u017cna przechowywa\u0107 gdzie indziej. Nie ma ogromnego data lake, niezarz\u0105dzanego globalnego cache'a. Cache'y projektowane s\u0105 pod system, produkt lub klient\u00f3w, aby u\u0142atwi\u0107 \u017cycie w zakresie serwisowania. Gdy dzwoni klient niezadowolony z jako\u015bci, chcemy go solidnie obs\u0142u\u017cy\u0107.<\/p>\n<h2>RTO i RPO<\/h2>\n<p>\nW IT istniej\u0105 dwa poj\u0119cia \u2013 <b>RTO<\/b> i\u00a0<b>RPO<\/b>. <\/p>\n<p><b>Recovery time objective<\/b>\u00a0\u2014 to czas przywracania us\u0142ugi po awarii. RTO = 0 oznacza, \u017ce nawet je\u015bli co\u015b padnie, us\u0142uga nadal dzia\u0142a.<\/p>\n<p><b>cel punktu przywracania<\/b>\u00a0\u2014 to czas przywracania danych, ile danych mo\u017cemy straci\u0107 w pewnym okresie. RPO = 0 oznacza, \u017ce nie tracimy danych.<\/p>\n<h2>Zadanie dla Tarantool<\/h2>\n<p>\nSpr\u00f3bujmy rozwi\u0105za\u0107 zadanie dla Tarantool.<\/p>\n<p><b>Dane<\/b>: powszechnie rozumiany koszyk zam\u00f3wie\u0144, na przyk\u0142ad w Amazonie lub gdzie indziej. <b>Wymagane<\/b> jest, aby koszyk dzia\u0142a\u0142 24 godziny na dob\u0119, 7 dni w tygodniu, czyli 99,99% czasu. Zam\u00f3wienia, kt\u00f3re do nas przychodz\u0105, musz\u0105 zachowa\u0107 porz\u0105dek, poniewa\u017c nie mo\u017cemy chaotycznie w\u0142\u0105cza\u0107 lub wy\u0142\u0105cza\u0107 klienta \u2014 wszystko musi by\u0107 \u015bci\u015ble uporz\u0105dkowane. Poprzednia subskrypcja wp\u0142ywa na nast\u0119pn\u0105, dlatego dane s\u0105 wa\u017cne \u2014 nic nie mo\u017ce zgin\u0105\u0107.<\/p>\n<p><b>Rozwi\u0105zanie<\/b>. Mo\u017cna spr\u00f3bowa\u0107 rozwi\u0105za\u0107 to na sucho i zapyta\u0107 programist\u00f3w Bazy Danych, ale zadanie matematycznie nie jest rozwi\u0105zane. Mo\u017cna przypomina\u0107 sobie twierdzenia, prawa zachowania, fizyk\u0119 kwantow\u0105, ale po co \u2014 nie da si\u0119 tego rozwi\u0105za\u0107 na poziomie bazy danych.<\/p>\n<p>Tutaj dzia\u0142a stary, dobry podej\u015bcie architektoniczne \u2014 trzeba dobrze zna\u0107 obszar tematyczny i dzi\u0119ki niemu rozwi\u0105za\u0107 t\u0119 zagadk\u0119.<\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/5820729af0a0da81732121692feb3867.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Nasze rozwi\u0105zanie: tworzymy rozproszony rejestr zam\u00f3wie\u0144 w Tarantool \u2014 geograficznie rozproszony klaster<\/b>. Na schemacie to trzy r\u00f3\u017cne centra przetwarzania danych \u2014 dwa przed Uralem, jeden za Uralem, i rozdzielamy wszystkie zam\u00f3wienia po tych centrach.<\/p>\n<p>Netflix, kt\u00f3ry teraz uwa\u017cany jest za jednego z lider\u00f3w w IT, do 2012 roku mia\u0142 tylko jedno centrum danych. W wigili\u0119 katolickiego Bo\u017cego Narodzenia, 24 grudnia, to centrum si\u0119 zawali\u0142o. U\u017cytkownicy w Kanadzie i USA zostali bez swoich ulubionych film\u00f3w, byli bardzo zrozpaczeni i napisali o tym w mediach spo\u0142eczno\u015bciowych. Teraz Netflix ma trzy centra danych na zachodnim i wschodnim wybrze\u017cu oraz jedno w zachodniej Europie. <\/p>\n<blockquote><p>Od samego pocz\u0105tku budujemy geograficznie rozproszone rozwi\u0105zanie \u2014 wa\u017cna jest dla nas odporno\u015b\u0107 na awarie. <\/p><\/blockquote>\n<p>\nTak wi\u0119c mamy klaster, ale jak by\u0107 z RPO = 0 i RTO = 0? Rozwi\u0105zanie jest proste, zale\u017cne od tematyki.<\/p>\n<p>Co jest wa\u017cne w zam\u00f3wieniach? Dwie cz\u0119\u015bci: roboczy koszyk\u00a0<b>PRZED<\/b> podj\u0119ciem decyzji o zakupie, i\u00a0<b>PO<\/b>. Cz\u0119\u015b\u0107 PRZED w telekomunikacji zwykle nazywa si\u0119 <b>przechwytywaniem zam\u00f3wie\u0144<\/b> lub <b>negocjacj\u0105 zam\u00f3wienia<\/b>. W telekomunikacji mo\u017ce to by\u0107 znacznie bardziej skomplikowane ni\u017c w sklepie internetowym, poniewa\u017c tam trzeba obs\u0142u\u017cy\u0107 klienta, zaproponowa\u0107 5 opcji, a ca\u0142y ten proces trwa jaki\u015b czas, ale koszyk si\u0119 zape\u0142nia. W tym momencie mo\u017ce wyst\u0105pi\u0107 awaria, ale to nie jest straszne, poniewa\u017c dzieje si\u0119 to w trybie interaktywnym pod nadzorem cz\u0142owieka. <\/p>\n<p>Je\u015bli moskiewskie centrum danych nagle si\u0119 zepsuje, prze\u0142\u0105czaj\u0105c si\u0119 automatycznie na inne centrum danych, b\u0119dziemy kontynuowa\u0107 prac\u0119. Teoretycznie mo\u017ce znikn\u0105\u0107 jeden produkt w koszyku, ale to wida\u0107, mo\u017cna ponownie uzupe\u0142ni\u0107 koszyk i kontynuowa\u0107 prac\u0119. W tym przypadku RTO = 0.<\/p>\n<p>W tym samym momencie istnieje druga opcja: gdy naci\u015bniemy \u201esubmit\u201d, chcemy, aby dane si\u0119 nie zgubi\u0142y. Od tego momentu zaczyna dzia\u0142a\u0107 automatyka \u2014 to ju\u017c RPO = 0. Zastosowanie tych dw\u00f3ch r\u00f3\u017cnych wzorc\u00f3w w jednym przypadku mo\u017ce by\u0107 po prostu geograficznie rozproszony klaster z jednym prze\u0142\u0105czanym masterem, a w innym przypadku jaka\u015b kworumowa rejestracja. Wzorce mog\u0105 si\u0119 r\u00f3\u017cni\u0107, ale my rozwi\u0105zujemy problem.<\/p>\n<p>Dalej, maj\u0105c rozproszony rejestr zg\u0142osze\u0144, mo\u017cemy to wszystko jeszcze skalowa\u0107 \u2014 mie\u0107 wielu dyspozytor\u00f3w i wykonawc\u00f3w, kt\u00f3rzy odwo\u0142uj\u0105 si\u0119 do tego rejestru.<\/p>\n<p><img decoding=\"async\" alt=\"Architektura billingowa nowej generacji: transformacja przy u\u017cyciu Tarantoola\" src=\"\/wp-content\/uploads\/2019\/09\/f8ef5f3f0cac371727dda29f457cf31d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Cassandra i Tarantool razem<\/h2>\n<p>\nJest jeszcze jeden przypadek \u2014 <b>\u201ewitryna bilans\u00f3w\u201d<\/b>. Tutaj mamy interesuj\u0105cy przypadek wsp\u00f3lnego zastosowania Cassandry i Tarantoola.<\/p>\n<p>Stosujemy Cassandr\u0119, poniewa\u017c 2 miliardy po\u0142\u0105cze\u0144 dziennie to nie limit, a ich liczba b\u0119dzie ros\u0142a. Marketerzy uwielbiaj\u0105 tworzy\u0107 zr\u00f3\u017cnicowan\u0105 analiz\u0119 ruchu wed\u0142ug \u017ar\u00f3de\u0142, a szczeg\u00f3\u0142y dotycz\u0105ce medi\u00f3w spo\u0142eczno\u015bciowych staj\u0105 si\u0119 coraz bardziej z\u0142o\u017cone. To wszystko zwi\u0119ksza histori\u0119.<\/p>\n<blockquote><p>Cassandra pozwala na poziome skalowanie do dowolnych rozmiar\u00f3w.<\/p><\/blockquote>\n<p>\nCzujemy si\u0119 komfortowo z Cassandr\u0105, ale ma ona jeden problem \u2014 nie nadaje si\u0119 do odczytu. Z zapisem wszystko jest w porz\u0105dku, 30 000 na sekund\u0119 nie stanowi problemu \u2014 <b>problem tkwi w odczycie<\/b>.<\/p>\n<p>Dlatego pojawi\u0142 si\u0119 temat z pami\u0119ci\u0105 podr\u0119czn\u0105 i przy okazji postanowili\u015bmy rozwi\u0105za\u0107 kolejny problem: istnieje stary, tradycyjny przypadek, w kt\u00f3rym sprz\u0119t od prze\u0142\u0105cznika online do rozrachunku przesy\u0142a pliki, kt\u00f3re \u0142adujemy do Cassandry. Zmagali\u015bmy si\u0119 z problemem niezawodnego \u0142adowania tych plik\u00f3w, nawet zastosowali\u015bmy na rad\u0119 mened\u017cera IBM transfer plik\u00f3w \u2013 istniej\u0105 takie rozwi\u0105zania, kt\u00f3re efektywnie zarz\u0105dzaj\u0105 przekazywaniem plik\u00f3w za pomoc\u0105 protoko\u0142u UDP, na przyk\u0142ad, a nie TCP. To dzia\u0142a dobrze, ale nadal to trwa kilka minut, i dop\u00f3ki tego nie za\u0142adujemy, operator w centrum kontaktowym nie mo\u017ce odpowiedzie\u0107 klientowi, co si\u0119 sta\u0142o z jego saldem \u2013 trzeba czeka\u0107.<\/p>\n<p>Aby do tego nie dosz\u0142o, stosujemy\u00a0<b>r\u00f3wnoleg\u0142y funkcjonalny zapas<\/b>. Kiedy wysy\u0142amy zdarzenie przez Kafk\u0119 do Tarantoola, przeliczaj\u0105c agregaty w czasie rzeczywistym, na przyk\u0142ad za dzisiaj, otrzymujemy <b>pami\u0119\u0107 podr\u0119czn\u0105 sald<\/b>, kt\u00f3ra mo\u017ce zwraca\u0107 salda z dowoln\u0105 pr\u0119dko\u015bci\u0105, na przyk\u0142ad 100 tysi\u0119cy transakcji na sekund\u0119 oraz te same 2 sekundy.<\/p>\n<p>Celem jest to, aby po wykonaniu po\u0142\u0105czenia ju\u017c po 2 sekundach w panelu osobistym nie tylko by\u0142o zmienione saldo, ale r\u00f3wnie\u017c informacje o tym, dlaczego ono si\u0119 zmieni\u0142o.<\/p>\n<h2>Podsumowanie<\/h2>\n<p>\nTo by\u0142y przyk\u0142ady zastosowania Tarantoola. Bardzo podoba\u0142a nam si\u0119 otwarto\u015b\u0107 Mail.ru, ich gotowo\u015b\u0107 do rozwa\u017cania r\u00f3\u017cnych przypadk\u00f3w. <\/p>\n<p>Doradcom z BCG czy McKinsey, Accenture lub IBM ju\u017c trudno nas czym\u015b nowym zaskoczy\u0107 \u2013 wiele z tego, co oferuj\u0105, ju\u017c robimy, zrobili\u015bmy lub planujemy zrobi\u0107. My\u015bl\u0119, \u017ce Tarantool zajmie godne miejsce w naszym stosie technologicznym i zast\u0105pi wiele ju\u017c istniej\u0105cych technologii. Jeste\u015bmy w aktywnej fazie rozwoju tego projektu.<\/p>\n<blockquote><p>Wyk\u0142ad Olega i Andrieja by\u0142 jednym z najlepszych na konferencji Tarantool w zesz\u0142ym roku, a ju\u017c 17 czerwca Oleg Iwlew wyst\u0105pi na\u00a0<noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\">T+ Conference 2019<\/a><\/noindex>\u00a0z wyk\u0142adem <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\/abstracts\/5429\">\u201ePo co Tarantool w Enterprise\u201d<\/a><\/noindex>. R\u00f3wnie\u017c od MTS wyst\u0105pi Aleksander Deulin z wyk\u0142adem <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\/abstracts\/5418\">\u201eBufory Tarantoola i replikacja z Oracle\u201d<\/a><\/noindex>. Dowiemy si\u0119, co si\u0119 zmieni\u0142o, jakie plany uda\u0142o si\u0119 zrealizowa\u0107. Do\u0142\u0105czcie \u2013 konferencja jest darmowa, wystarczy tylko <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.ontico.ru\/event\/join\/trc2019.html\">zarejestrowa\u0107 si\u0119<\/a><\/noindex>. Wszystkie <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\/abstracts\/\">wyk\u0142ady zosta\u0142y przyj\u0119te<\/a><\/noindex> i program konferencji zosta\u0142 sformu\u0142owany: nowe przypadki, nowe do\u015bwiadczenia z Tarantool, architektura, enterprise, tutoriale i mikrous\u0142ugi.<\/p><\/blockquote>\n<p>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/455694\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0417\u0430\u0447\u0435\u043c \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0446\u0438\u0438, \u043a\u0430\u043a \u041c\u0435\u0433\u0430\u0424\u043e\u043d, Tarantool \u0432\u00a0\u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0435? \u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432\u0435\u043d\u0434\u043e\u0440, \u043f\u0440\u0438\u043d\u043e\u0441\u0438\u0442 \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0443\u044e \u043a\u043e\u0440\u043e\u0431\u043a\u0443, \u0432\u0442\u044b\u043a\u0430\u0435\u0442 \u0448\u0442\u0435\u043a\u0435\u0440 \u0432\u00a0\u0440\u043e\u0437\u0435\u0442\u043a\u0443\u00a0\u2014 \u0432\u043e\u0442 \u0438\u00a0\u0431\u0438\u043b\u043b\u0438\u043d\u0433! \u041a\u043e\u0433\u0434\u0430-\u0442\u043e \u0442\u0430\u043a \u0438\u00a0\u0431\u044b\u043b\u043e, \u043d\u043e\u00a0\u0441\u0435\u0439\u0447\u0430\u0441 \u044d\u0442\u043e \u0430\u0440\u0445\u0430\u0438\u043a\u0430, \u0438\u00a0\u0442\u0430\u043a\u0438\u0435 \u0434\u0438\u043d\u043e\u0437\u0430\u0432\u0440\u044b \u0443\u0436\u0435 \u0432\u044b\u043c\u0435\u0440\u043b\u0438 \u0438\u043b\u0438 \u0432\u044b\u043c\u0438\u0440\u0430\u044e\u0442. \u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0431\u0438\u043b\u043b\u0438\u043d\u0433 \u044d\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0434\u043b\u044f \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0447\u0435\u0442\u043e\u0432\u00a0\u2014 \u0441\u0447\u0438\u0442\u0430\u043b\u043a\u0430 \u0438\u043b\u0438 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440. \u0412\u00a0\u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c \u0442\u0435\u043b\u0435\u043a\u043e\u043c\u0435\u00a0\u2014 \u044d\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0441\u0435\u0433\u043e \u0436\u0438\u0437\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0446\u0438\u043a\u043b\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441\u00a0\u0430\u0431\u043e\u043d\u0435\u043d\u0442\u043e\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28258,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37650","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0417\u0430\u0447\u0435\u043c \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0446\u0438\u0438, \u043a\u0430\u043a \u041c\u0435\u0433\u0430\u0424\u043e\u043d, Tarantool \u0432 \u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0435? \u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432\u0435\u043d\u0434\u043e\u0440, \u043f\u0440\u0438\u043d\u043e\u0441\u0438\u0442 \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0443\u044e \u043a\u043e\u0440\u043e\u0431\u043a\u0443, \u0432\u0442\u044b\u043a\u0430\u0435\u0442 \u0448\u0442\u0435\u043a\u0435\u0440 \u0432 \u0440\u043e\u0437\u0435\u0442\u043a\u0443 \u2014 \u0432\u043e\u0442 \u0438 \u0431\u0438\u043b\u043b\u0438\u043d\u0433!\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f: \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0441 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043e\u043c \u043d\u0430 Tarantool | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0417\u0430\u0447\u0435\u043c \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0446\u0438\u0438, \u043a\u0430\u043a \u041c\u0435\u0433\u0430\u0424\u043e\u043d, Tarantool \u0432 \u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0435? \u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432\u0435\u043d\u0434\u043e\u0440, \u043f\u0440\u0438\u043d\u043e\u0441\u0438\u0442 \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0443\u044e \u043a\u043e\u0440\u043e\u0431\u043a\u0443, \u0432\u0442\u044b\u043a\u0430\u0435\u0442 \u0448\u0442\u0435\u043a\u0435\u0440 \u0432 \u0440\u043e\u0437\u0435\u0442\u043a\u0443 \u2014 \u0432\u043e\u0442 \u0438 \u0431\u0438\u043b\u043b\u0438\u043d\u0433!\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:18:50+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:18:50+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Architektura nowej generacji billing\u00f3w: transformacja z przej\u015bciem na Tarantool | ProHoster","description":"Dlaczego takiej korporacji jak MegaFon potrzebny jest Tarantool w billingach? Z zewn\u0105trz wydaje si\u0119, \u017ce zazwyczaj przychodzi dostawca, przynosi jak\u0105\u015b du\u017c\u0105 skrzynk\u0119, pod\u0142\u0105cza wtyczk\u0119 do gniazdka \u2014 i oto billing!","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f: \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0441 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043e\u043c \u043d\u0430 Tarantool | ProHoster","og:description":"\u0417\u0430\u0447\u0435\u043c \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0446\u0438\u0438, \u043a\u0430\u043a \u041c\u0435\u0433\u0430\u0424\u043e\u043d, Tarantool \u0432 \u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0435? \u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432\u0435\u043d\u0434\u043e\u0440, \u043f\u0440\u0438\u043d\u043e\u0441\u0438\u0442 \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0443\u044e \u043a\u043e\u0440\u043e\u0431\u043a\u0443, \u0432\u0442\u044b\u043a\u0430\u0435\u0442 \u0448\u0442\u0435\u043a\u0435\u0440 \u0432 \u0440\u043e\u0437\u0435\u0442\u043a\u0443 \u2014 \u0432\u043e\u0442 \u0438 \u0431\u0438\u043b\u043b\u0438\u043d\u0433!","og:url":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:18:50+00:00","article:modified_time":"2019-10-31T19:18:50+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37650","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 18:44:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:23:06","updated":"2026-01-23 18:44:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/37650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=37650"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/37650\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media\/28258"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=37650"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=37650"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=37650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}