{"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\/pt\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool","title":{"rendered":"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Por que uma corpora\u00e7\u00e3o como a MegaFon precisaria do Tarantool na cobran\u00e7a? \u00c0 primeira vista, parece que um fornecedor chega, traz uma grande caixa, conecta o plugue na tomada \u2014 e est\u00e1 feita a cobran\u00e7a! Antigamente era assim, mas agora isso \u00e9 obsoleto, e esses dinossauros j\u00e1 est\u00e3o extintos ou em processo de extin\u00e7\u00e3o. Inicialmente, a cobran\u00e7a era um sistema para emiss\u00e3o de faturas \u2014 uma contagem ou calculadora. No telecomunica\u00e7\u00f5es moderna, \u00e9 <b>um sistema de automa\u00e7\u00e3o de todo o ciclo de vida de intera\u00e7\u00e3o com o assinante, desde a assinatura do contrato at\u00e9 a rescis\u00e3o<\/b>, incluindo tarifa\u00e7\u00e3o em tempo real, aceita\u00e7\u00e3o de pagamentos e muito mais. A cobran\u00e7a em empresas de telecomunica\u00e7\u00f5es se assemelha a um rob\u00f4 de combate \u2014 grande, poderoso e armado at\u00e9 os dentes.<\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/9ca92c53ac5ba33179e1fcfd6bd11558.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nE qual \u00e9 a rela\u00e7\u00e3o com o Tarantool? Sobre isso falam <b>Oleg Ivlev<\/b> e\u00a0<b>Andrei Knyazyev<\/b>. Oleg \u00e9 o arquiteto-chefe da empresa <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/megafon\/\">MegaFon<\/a><\/noindex> com vasta experi\u00eancia em empresas estrangeiras, e Andrei \u00e9 o diretor de sistemas de neg\u00f3cios. A partir da transcri\u00e7\u00e3o de sua apresenta\u00e7\u00e3o na\u00a0<noindex><a rel=\"nofollow\" href=\"http:\/\/conf.tarantool.io\/2018\">Tarantool Conference 2018<\/a><\/noindex>\u00a0, voc\u00ea entender\u00e1 por que o R&amp;D \u00e9 necess\u00e1rio nas corpora\u00e7\u00f5es, o que \u00e9 o Tarantool, como o impasse da escalabilidade vertical e a globaliza\u00e7\u00e3o criaram as condi\u00e7\u00f5es para o surgimento deste banco de dados na empresa, os desafios tecnol\u00f3gicos, a transforma\u00e7\u00e3o da arquitetura e como a pilha tecnol\u00f3gica da MegaFon se assemelha \u00e0 da Netflix, Google e 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=\"Por que no hosting comum a administra\u00e7\u00e3o do PrestaShop \u00e9 lenta, e no seu n\u00e3o \u00e9?\" 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>O projeto \"Cobran\u00e7a \u00danica\"<\/h2>\n<p>\nO projeto do qual vamos falar se chama \"Cobran\u00e7a \u00danica\". \u00c9 nele que o Tarantool demonstrou suas melhores qualidades. <\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/5639a301647b9afd07304ed423f02669.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nO crescimento da performance do equipamento Hi-End n\u00e3o acompanhou o aumento da base de assinantes e do n\u00famero de servi\u00e7os, e esperava-se um crescimento adicional do n\u00famero de assinantes e servi\u00e7os devido ao M2M, IoT, al\u00e9m disso, peculiaridades regionais levaram a um aumento no tempo de coloca\u00e7\u00e3o no mercado. A empresa decidiu criar um sistema de neg\u00f3cios \u00fanico com uma arquitetura modular exclusiva de n\u00edvel mundial, em substitui\u00e7\u00e3o a 8 sistemas de cobran\u00e7a diferentes.<\/p>\n<p><b>MegaFon \u00e9 oito empresas em uma<\/b>. Em 2009, concluiu-se a reorganiza\u00e7\u00e3o: filiais em toda a R\u00fassia se uniram em uma \u00fanica empresa, a OAO \"MegaFon\" (atualmente P\u0410\u041e). Assim, a empresa passou a contar com 8 sistemas de cobran\u00e7a com suas pr\u00f3prias solu\u00e7\u00f5es \"personalizadas\", peculiaridades regionais e estruturas organizacionais, TI e marketing variadas.<\/p>\n<p>Tudo estava bem at\u00e9 que tivemos que lan\u00e7ar um produto federal comum. Aqui surgiram muitas dificuldades: alguns t\u00eam tarifa\u00e7\u00e3o arredondada para cima, outros para baixo, e alguns - pela m\u00e9dia aritm\u00e9tica. S\u00e3o milhares de situa\u00e7\u00f5es como essas.<\/p>\n<p>Apesar de a vers\u00e3o do sistema de billing ser \u00fanica, com um \u00fanico fornecedor, as configura\u00e7\u00f5es divergem de tal forma que \u00e9 complicado unific\u00e1-las. Tentamos reduzir o n\u00famero delas e nos deparamos com um segundo problema, que \u00e9 familiar para muitas corpora\u00e7\u00f5es.<\/p>\n<p><b>Escalonamento vertical<\/b>. Mesmo o hardware mais avan\u00e7ado na \u00e9poca n\u00e3o atendia \u00e0s necessidades. Us\u00e1vamos equipamentos da Hewlett-Packard, da linha Superdome Hi-End, mas n\u00e3o suportavam nem as demandas de duas filiais. Precis\u00e1vamos de escalonamento horizontal sem grandes custos operacionais ou investimentos de capital.<\/p>\n<p><b>Expectativa de crescimento no n\u00famero de assinantes e servi\u00e7os<\/b>. Os consultores j\u00e1 trouxeram para o mundo telecom relatos sobre IoT e M2M: chegar\u00e1 o tempo em que cada telefone e ferro de passar ter\u00e1 um cart\u00e3o SIM, e cada geladeira ter\u00e1 dois. Hoje temos um certo n\u00famero de assinantes, e no futuro pr\u00f3ximo, haver\u00e1 uma ordem de magnitude a mais.<\/p>\n<h2>Desafios tecnol\u00f3gicos<\/h2>\n<p>\nEssas quatro raz\u00f5es nos levaram a mudan\u00e7as s\u00e9rias. Havia uma escolha entre modernizar o sistema e projetar do zero. Pensamos muito, tomamos decis\u00f5es s\u00e9rias e realizamos concorr\u00eancias. No final, decidimos projetar desde o in\u00edcio e nos deparamos com desafios interessantes - desafios tecnol\u00f3gicos.<\/p>\n<h3>Escalabilidade<\/h3>\n<p>\nSe antes t\u00ednhamos, digamos, <b>8 billings com 15 milh\u00f5es de assinantes<\/b>, agora dever\u00edamos ter <b>100 milh\u00f5es de assinantes ou mais<\/b>\u00a0\u2014 a carga seria significativamente maior.<\/p>\n<blockquote><p>Nos tornamos compar\u00e1veis em escala a grandes players da internet, como Mail.ru ou Netflix.<\/p><\/blockquote>\n<p>\nMas o avan\u00e7o na carga e na base de assinantes nos colocou diante de desafios s\u00e9rios.<\/p>\n<h3>A geografia do nosso imenso pa\u00eds<\/h3>\n<p>\nEntre Kaliningrado e Vladivostok <b>7500 km e 10 fusos hor\u00e1rios<\/b>. A velocidade da luz \u00e9 finita e, em tais dist\u00e2ncias, os delays j\u00e1 s\u00e3o significativos. 150 ms nos canais \u00f3pticos mais avan\u00e7ados \u00e9 demais para tarifa\u00e7\u00e3o em tempo real, especialmente como \u00e9 atualmente no telecom na R\u00fassia. Al\u00e9m disso, \u00e9 necess\u00e1rio atualiz\u00e1-lo em um dia \u00fatil, e com diferentes fusos hor\u00e1rios, isso se torna um problema.<\/p>\n<p>N\u00f3s n\u00e3o apenas oferecemos servi\u00e7os por assinatura, mas temos tarifas complexas, pacotes e diferentes modificadores. Precisamos n\u00e3o apenas permitir ou proibir que o assinante fa\u00e7a chamadas, mas lhe dar uma cota espec\u00edfica \u2014 calcular chamadas e a\u00e7\u00f5es em tempo real de modo que ele n\u00e3o perceba.<\/p>\n<h3>Resili\u00eancia<\/h3>\n<p><\/p>\n<blockquote><p>Esse \u00e9 o reverso da centraliza\u00e7\u00e3o.<\/p><\/blockquote>\n<p>\nSe reunimos todos os assinantes em um \u00fanico sistema, qualquer evento de emerg\u00eancia e cat\u00e1strofes ser\u00e1 desastroso para os neg\u00f3cios. Portanto, projetamos o sistema para eliminar a influ\u00eancia de falhas sobre toda a base de assinantes.<\/p>\n<p>Isso \u00e9, novamente, uma consequ\u00eancia da ren\u00fancia ao escalonamento vertical. Quando adotamos o escalonamento horizontal, aumentamos o n\u00famero de servidores de centenas para milhares. Precisamos gerenci\u00e1-los e estabelecer intercambiabilidade, automatizar a reserva da infraestrutura de TI e restaurar o sistema distribu\u00eddo.<\/p>\n<p>Desafios interessantes estavam diante de n\u00f3s. Projetamos o sistema e, nesse momento, tentamos encontrar pr\u00e1ticas de ponta mundiais para verificar qu\u00e3o atualizados estamos, qu\u00e3o em conformidade estamos com as tecnologias avan\u00e7adas.<\/p>\n<h2>Experi\u00eancia mundial<\/h2>\n<p><\/p>\n<blockquote><p>Surpreendentemente, na telecomunica\u00e7\u00e3o global, n\u00e3o encontramos nenhuma refer\u00eancia.<\/p><\/blockquote>\n<p>\nA Europa ficou de fora em termos de quantidade de assinantes e escala, os EUA em termos de estrutura de suas tarifas. Olhamos algo na China e encontramos um pouco na \u00cdndia, trazendo especialistas da Vodafone \u00cdndia.<\/p>\n<p>Para analisar a arquitetura, reunimos uma Dream Team liderada pela IBM \u2014 arquitetos de v\u00e1rias \u00e1reas. Essas pessoas foram capazes de avaliar adequadamente o que estamos fazendo e trazer certos conhecimentos para a nossa arquitetura.<\/p>\n<h2>Escala<\/h2>\n<p>\nAlguns n\u00fameros para ilustrar.<\/p>\n<p>Estamos projetando o sistema para <b>80 milh\u00f5es de assinantes, com uma margem para um bilh\u00e3o<\/b>. Assim, eliminamos futuros limites. N\u00e3o \u00e9 porque planejamos conquistar a China, mas devido \u00e0 press\u00e3o do IoT e M2M.<\/p>\n<p><b>300 milh\u00f5es de documentos s\u00e3o processados em tempo real<\/b>. Embora tenhamos 80 milh\u00f5es de assinantes, estamos tamb\u00e9m lidando com clientes potenciais e aqueles que nos deixaram, se necess\u00e1rio, para recuperar d\u00edvida. Portanto, os volumes reais s\u00e3o significativamente maiores.<\/p>\n<p><b>2 bilh\u00f5es de transa\u00e7\u00f5es<\/b> mudam diariamente o saldo \u2014 isso inclui pagamentos, lan\u00e7amentos, chamadas e outros eventos.\u00a0<b>200 TB de dados mudam ativamente<\/b>, mudam um pouco mais lentamente <b>8 PB de dados<\/b>, e isso n\u00e3o \u00e9 um arquivo, mas dados ao vivo em uma \u00fanica cobran\u00e7a. A escala por centros de dados \u00e9 <b>5 mil servidores em 14 locais<\/b>.<\/p>\n<h2>Pilha tecnol\u00f3gica<\/h2>\n<p>\nQuando planejamos a arquitetura e come\u00e7amos a construir o sistema, importamos as tecnologias mais interessantes e avan\u00e7adas. O resultado foi uma pilha tecnol\u00f3gica familiar para qualquer jogador da internet e corpora\u00e7\u00f5es que desenvolvem sistemas de alto desempenho. <\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/22b6fcab2618455b615534f4bb4d9e5e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA pilha \u00e9 semelhante \u00e0s pilhas de outros grandes players: Netflix, Twitter, Viber. Consiste em 6 componentes, mas queremos reduzi-la e unific\u00e1-la.<\/p>\n<blockquote><p>Flexibilidade \u00e9 boa, mas em uma grande corpora\u00e7\u00e3o a unifica\u00e7\u00e3o \u00e9 essencial.<\/p><\/blockquote>\n<p>\nN\u00e3o estamos planejando trocar o mesmo Oracle pelo Tarantool. Na realidade de grandes empresas, isso \u00e9 uma utopia, ou uma cruzada que pode levar de 5 a 10 anos, com um desfecho incerto. Mas o Cassandra e o Couchbase podem ser facilmente substitu\u00eddos pelo Tarantool, e estamos avan\u00e7ando nesse sentido.<\/p>\n<h2>Por que Tarantool?<\/h2>\n<p>\nExistem 4 crit\u00e9rios simples que nos levaram a escolher esse banco de dados.<\/p>\n<p><b>Velocidade<\/b>. Realizamos testes de carga em sistemas industriais da MegaFon. O Tarantool venceu, mostrando o melhor desempenho.<\/p>\n<p>N\u00e3o se pode dizer que outros sistemas n\u00e3o atendem \u00e0s necessidades da MegaFon. As solu\u00e7\u00f5es atuais em mem\u00f3ria s\u00e3o t\u00e3o eficientes que essa margem \u00e9 mais do que suficiente para a empresa. Mas estamos interessados em lidar com um l\u00edder, e n\u00e3o com quem fica atr\u00e1s, inclusive no teste de carga.<\/p>\n<blockquote><p>O Tarantool atende \u00e0s necessidades da empresa mesmo a longo prazo.<\/p><\/blockquote>\n<p>\n<b>Custo total de propriedade (TCO)<\/b>. O suporte ao Couchbase em volumes da MegaFon custa uma fortuna, enquanto a situa\u00e7\u00e3o com o Tarantool \u00e9 muito mais agrad\u00e1vel, sendo que em funcionalidade eles s\u00e3o semelhantes.<\/p>\n<p>Outra caracter\u00edstica agrad\u00e1vel que influenciou nossa escolha \u00e9 que o Tarantool trabalha melhor com a mem\u00f3ria do que os outros bancos. Ele demonstra <b>m\u00e1xima efici\u00eancia<\/b>.<\/p>\n<p><b>Confiabilidade<\/b>. A MegaFon investe em confiabilidade, talvez mais do que qualquer outra. Portanto, ao analisarmos o Tarantool, percebemos que precisamos garantir que ele atenda \u00e0s nossas exig\u00eancias.<\/p>\n<p>Investimos nosso tempo e finan\u00e7as, e junto com a Mail.ru criamos uma vers\u00e3o enterprise, que agora j\u00e1 est\u00e1 sendo utilizada em v\u00e1rias outras empresas.<\/p>\n<blockquote><p>O Tarantool-enterprise atendeu totalmente nossas necessidades em termos de seguran\u00e7a, confiabilidade e registro de logs.<\/p><\/blockquote>\n<p><\/p>\n<h3>Parceria<\/h3>\n<p>\nO mais importante para mim \u00e9 <b>o contato direto com o desenvolvedor<\/b>. Isso \u00e9 exatamente o que os caras do Tarantool conquistaram.<\/p>\n<p>Se voc\u00ea chega at\u00e9 um jogador, especialmente um que trabalha com um cliente \u00e2ncora, e diz que precisa que o banco de dados fa\u00e7a isso, isso e aquilo, geralmente ele responde:<\/p>\n<p><i>\u2014 Tudo bem, coloque os requisitos na parte inferior daquela pilha \u2014 talvez um dia consigamos chegar at\u00e9 eles.<\/i><\/p>\n<p>Muitos t\u00eam um roadmap para os pr\u00f3ximos 2-3 anos, e \u00e9 praticamente imposs\u00edvel se integrar a isso, enquanto os desenvolvedores do Tarantool encantam pela abertura, n\u00e3o apenas com a Megafon, e adaptam seu sistema \u00e0s necessidades do cliente. Isso \u00e9 incr\u00edvel, e gostamos muito.<\/p>\n<h2>Onde aplicamos o Tarantool<\/h2>\n<p>\nUsamos o Tarantool em v\u00e1rios elementos. <b>O primeiro \u2014 no piloto<\/b>, que fizemos no sistema de cat\u00e1logo de endere\u00e7os. Na \u00e9poca, quer\u00edamos que fosse um sistema semelhante ao Yandex.Maps e Google Maps, mas acabou saindo um pouco diferente. <\/p>\n<p>Por exemplo, o cat\u00e1logo de endere\u00e7os na interface de vendas. No Oracle, a busca pelo endere\u00e7o correto leva de 12 a 13 segundos \u2014 n\u00fameros desconfort\u00e1veis. Quando mudamos para o Tarantool, substitu\u00edmos o Oracle por outro banco de dados no console e realizamos a mesma busca, obtendo uma acelera\u00e7\u00e3o de 200 vezes! A cidade aparece ap\u00f3s a terceira letra. Agora estamos adaptando a interface para que isso aconte\u00e7a ap\u00f3s a primeira. No entanto, a velocidade de resposta \u00e9 completamente diferente \u2014 j\u00e1 s\u00e3o milissegundos em vez de segundos.<\/p>\n<p><b>A segunda aplica\u00e7\u00e3o \u2014 um tema corrente, chamado de TI de dupla velocidade<\/b>. Tudo porque consultores de v\u00e1rias fontes dizem que as corpora\u00e7\u00f5es deveriam seguir nessa dire\u00e7\u00e3o.<\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/f9fa9e342e57f1483b1a8ea0b31bd9ae.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAqui h\u00e1 uma camada de infraestrutura, acima da qual est\u00e3o os dom\u00ednios, por exemplo, um sistema de faturamento, como no setor de telecomunica\u00e7\u00f5es, sistemas corporativos, relat\u00f3rios corporativos. Este \u00e9 o n\u00facleo, que n\u00e3o deve ser tocado. Ou seja, claro que pode, mas \u00e9 preciso garantir a qualidade de forma quase paranoica, porque isso traz dinheiro para a corpora\u00e7\u00e3o.<\/p>\n<p>Em seguida, vem a camada de microsservi\u00e7os \u2014 o que diferencia o operador ou outro jogador. Os microsservi\u00e7os podem ser rapidamente criados com base em determinados caches, obtendo dados de diferentes dom\u00ednios. Aqui <b>existe espa\u00e7o para experimentos<\/b>\u00a0\u2014 se algo n\u00e3o deu certo, fechei um microsservi\u00e7o, abri outro. Isso realmente proporciona um aumento significativo no time-to-market e melhora a confiabilidade e a velocidade da empresa.<\/p>\n<blockquote><p>Os microsservi\u00e7os s\u00e3o, sem d\u00favida, o papel principal do Tarantool na Megafon. <\/p><\/blockquote>\n<p><\/p>\n<h2>Onde planejamos aplicar o Tarantool<\/h2>\n<p>\nComparando nosso projeto de faturamento bem-sucedido com os programas de transforma\u00e7\u00e3o da Deutsche Telekom, Svjaznoy e Vodafone \u00cdndia, ele \u00e9 surpreendentemente din\u00e2mico e criativo. No processo de implementa\u00e7\u00e3o desse projeto, n\u00e3o apenas a MegaFon e sua estrutura foram transformadas, mas tamb\u00e9m surgiu o Tarantool-enterprise na Mail.ru, e nosso fornecedor Nexign (anteriormente 'Peter-Service') lan\u00e7ou o BSS Box (solu\u00e7\u00e3o de faturamento de caixa).<\/p>\n<p>Este \u00e9, de certa forma, um projeto hist\u00f3rico para o mercado russo. Pode ser comparado ao que est\u00e1 descrito no livro de Frederick Brooks 'O Mythical Man-Month'. Naquela \u00e9poca, nos anos 60, para desenvolver um novo sistema operacional OS\/360 para mainframes, a IBM recrutou 5.000 pessoas. Temos menos \u2013 1.800, mas estamos \u00e0 altura, e considerando o uso de c\u00f3digo aberto e novas abordagens, somos mais produtivos.<\/p>\n<p>Abaixo est\u00e3o os dom\u00ednios de faturamento ou, se falarmos de forma mais ampla, \u2013 sistemas de neg\u00f3cios. As pessoas da \u00e1rea de enterprise conhecem bem o CRM. Outras sistemas devem ser comuns a todos: Open API, API Gateway.<\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/7b9bf49f01aecb626e0f65f035c76ff0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>Open API<\/h3>\n<p>\nVamos novamente olhar os n\u00fameros e como o Open API est\u00e1 funcionando agora. Sua carga \u00e9 de <b>10.000 transa\u00e7\u00f5es por segundo<\/b>. Como planejamos desenvolver ativamente a camada de microsservi\u00e7os e construir a API p\u00fablica da MegaFon, esperamos um crescimento ainda maior no futuro exatamente nesta parte.\u00a0<b>100.000 transa\u00e7\u00f5es com certeza ser\u00e1.<\/b>.<\/p>\n<p>N\u00e3o sei se conseguiremos nos igualar \u00e0 Mail.ru em SSO \u2013 eles t\u00eam, aparentemente, 1.000.000 transa\u00e7\u00f5es por segundo. A solu\u00e7\u00e3o deles nos interessa muito e planejamos absorver sua experi\u00eancia \u2013 por exemplo, criando uma reserva funcional de SSO com o Tarantool. Atualmente, os desenvolvedores da Mail.ru est\u00e3o trabalhando nisso conosco.<\/p>\n<h2>CRM<\/h2>\n<p>\nCRM \u00e9 a mesma base de 80 milh\u00f5es de assinantes que queremos levar a um bilh\u00e3o, pois j\u00e1 temos 300 milh\u00f5es de documentos que incluem tr\u00eas anos de hist\u00f3rico. Estamos realmente esperando novos servi\u00e7os, e aqui <b>o ponto de crescimento s\u00e3o os servi\u00e7os conectados<\/b>. Este \u00e9 um dom\u00ednio que vai crescer, porque haver\u00e1 cada vez mais servi\u00e7os. Portanto, precisaremos de um hist\u00f3rico, e n\u00e3o queremos trope\u00e7ar nisso.<\/p>\n<p>O faturamento, na parte de emiss\u00e3o de faturas e gerenciamento de contas a receber dos clientes <b>transformou-se em um dom\u00ednio separado<\/b>. Para ampliar a produtividade, <b>um padr\u00e3o arquitet\u00f4nico de arquitetura de dom\u00ednio foi aplicado.<\/b>.<\/p>\n<blockquote><p>O sistema \u00e9 dividido em dom\u00ednios, a carga \u00e9 distribu\u00edda e a toler\u00e2ncia a falhas \u00e9 garantida. Al\u00e9m disso, foi realizado trabalho com arquitetura distribu\u00edda.<\/p><\/blockquote>\n<p>\nTudo o mais s\u00e3o solu\u00e7\u00f5es de n\u00edvel enterprise. No armazenamento de chamadas \u2013 <b>2 bilh\u00f5es por dia<\/b>, 60 bilh\u00f5es por m\u00eas. \u00c0s vezes \u00e9 necess\u00e1rio recalcular por m\u00eas, e o melhor \u00e9 fazer isso rapidamente. <b>Monitoramento financeiro<\/b>\u00a0\u00e9 exatamente os 300 milh\u00f5es que continuam a crescer: os assinantes costumam trocar de operadoras, aumentando essa parte.<\/p>\n<p>O componente mais telecom de comunica\u00e7\u00e3o m\u00f3vel \u00e9 <b>a tarifa\u00e7\u00e3o online<\/b>. S\u00e3o sistemas que permitem que voc\u00ea fa\u00e7a chamadas ou n\u00e3o, tomando decis\u00f5es em tempo real. Aqui a carga \u00e9 de 30.000 transa\u00e7\u00f5es por segundo, mas considerando o crescimento na transmiss\u00e3o de dados, planejamos <b>250.000 transa\u00e7\u00f5es<\/b>, e por isso estamos muito interessados no Tarantool.<\/p>\n<p>A imagem anterior mostra os dom\u00ednios onde pretendemos aplicar o Tarantool. O CRM em si \u00e9,\u5f53\u7136, mais abrangente e planejamos aplic\u00e1-lo no n\u00facleo. <\/p>\n<p>O n\u00famero calculado de caracter\u00edsticas t\u00e9cnicas de 100 milh\u00f5es de assinantes me preocupa como arquiteto - e se 101 milh\u00f5es? Teremos que refazer tudo? Para evitar isso, aplicamos caches, al\u00e9m de aumentar a disponibilidade.<\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/64cd6ce61687c209e6e35daf56d66dd1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nExistem basicamente duas abordagens para aplicar o Tarantool. A primeira \u00e9 <b>construir todos os caches no n\u00edvel de microsservi\u00e7os.<\/b>Pelo que entendo, essa \u00e9 a dire\u00e7\u00e3o em que o VimpelCom est\u00e1 indo, criando um cache de clientes.<\/p>\n<p>N\u00f3s, por outro lado, dependemos menos dos fornecedores, mudamos o n\u00facleo BSS, portanto j\u00e1 temos um registro unificado de clientes pronto. Mas queremos expandi-lo. Por isso aplicamos uma abordagem um pouco diferente - <b> fazemos caches dentro dos sistemas.<\/b>.<\/p>\n<blockquote><p>Assim h\u00e1 menos dessincroniza\u00e7\u00e3o - um sistema responde tanto pelo cache quanto pela fonte mestre principal.<\/p><\/blockquote>\n<p>\nEsse m\u00e9todo se encaixa bem na abordagem do Tarantool com esqueleto transacional, onde apenas as partes relacionadas a atualiza\u00e7\u00f5es, ou seja, mudan\u00e7as de dados, s\u00e3o atualizadas. Todo o resto pode ser armazenado em outro lugar. N\u00e3o h\u00e1 um enorme data lake, um cache global n\u00e3o gerenciado. Os caches s\u00e3o projetados para o sistema, seja para produtos, seja para clientes, ou, para facilitar a vida da manuten\u00e7\u00e3o. Quando um assinante insatisfeito com a qualidade liga, queremos atend\u00ea-lo bem.<\/p>\n<h2>RTO e RPO<\/h2>\n<p>\nNa TI existem dois termos - <b>RTO<\/b> e\u00a0<b>RPO<\/b>. <\/p>\n<p><b>Objetivo de tempo de recupera\u00e7\u00e3o<\/b>\u00a0\u2014 \u00e9 o tempo de recupera\u00e7\u00e3o do servi\u00e7o ap\u00f3s uma falha. RTO = 0 significa que, mesmo que algo falhe, o servi\u00e7o continua funcionando.<\/p>\n<p><b>Objetivo do ponto de recupera\u00e7\u00e3o<\/b>\u00a0\u2014 \u00e9 o tempo de recupera\u00e7\u00e3o dos dados, quanto dado podemos perder em um determinado per\u00edodo de tempo. RPO = 0 significa que n\u00e3o perdemos dados.<\/p>\n<h2>Tarefa para Tarantool<\/h2>\n<p>\nVamos tentar resolver a tarefa para Tarantool.<\/p>\n<p><b>Dado<\/b>: um carrinho de pedidos compreens\u00edvel por todos, por exemplo, na Amazon ou em outro lugar qualquer. <b>\u00c9 necess\u00e1rio<\/b> para que o carrinho funcione 24 horas por dia, 7 dias por semana, ou 99,99% do tempo. Os pedidos que nos chegam devem manter a ordem, pois n\u00e3o podemos ativar ou desativar a conex\u00e3o do assinante de forma ca\u00f3tica \u2013 tudo deve ser rigorosamente sequencial. A assinatura anterior influencia a pr\u00f3xima, portanto, os dados s\u00e3o importantes \u2013 nada deve se perder.<\/p>\n<p><b>Solu\u00e7\u00e3o<\/b>. Pode-se tentar resolver diretamente e perguntar aos desenvolvedores do banco de dados, mas a tarefa n\u00e3o \u00e9 matematicamente resolv\u00edvel. Pode-se lembrar teoremas, leis de conserva\u00e7\u00e3o, f\u00edsica qu\u00e2ntica, mas para qu\u00ea \u2013 isso n\u00e3o pode ser resolvido no n\u00edvel do banco de dados.<\/p>\n<p>Aqui aplica-se a boa e velha abordagem arquitet\u00f4nica \u2013 \u00e9 necess\u00e1rio conhecer bem o dom\u00ednio e, a partir disso, resolver esse quebra-cabe\u00e7a.<\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/5820729af0a0da81732121692feb3867.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Nossa solu\u00e7\u00e3o: criamos um registro distribu\u00eddo de pedidos no Tarantool \u2013 um cluster geograficamente distribu\u00eddo<\/b>. No esquema, s\u00e3o tr\u00eas diferentes centros de dados \u2013 dois antes dos Urais, um al\u00e9m dos Urais, e distribu\u00edmos todos os pedidos entre esses centros.<\/p>\n<p>A Netflix, que agora \u00e9 considerada uma das l\u00edderes em TI, at\u00e9 2012 tinha apenas um DC. Na v\u00e9spera do Natal cat\u00f3lico, 24 de dezembro, esse DC caiu. Os usu\u00e1rios no Canad\u00e1 e nos EUA ficaram sem seus filmes favoritos, ficaram muito chateados e escreveram sobre isso nas redes sociais. Agora a Netflix tem tr\u00eas DCS na costa leste-oeste e um na Europa Ocidental. <\/p>\n<blockquote><p>Estamos inicialmente construindo uma solu\u00e7\u00e3o geograficamente distribu\u00edda \u2013 a resili\u00eancia \u00e9 importante para n\u00f3s. <\/p><\/blockquote>\n<p>\nEnt\u00e3o, temos um cluster, mas como lidar com RPO = 0 e RTO = 0? A solu\u00e7\u00e3o \u00e9 simples e depende do dom\u00ednio.<\/p>\n<p>O que \u00e9 importante nas solicita\u00e7\u00f5es? Duas partes: coletar o carrinho\u00a0<b>ANTES<\/b> da decis\u00e3o de compra, e\u00a0<b>DEPOIS<\/b>. A parte ANTES no telecom geralmente \u00e9 chamada de <b>captura de pedidos<\/b> ou <b>negocia\u00e7\u00e3o de pedidos<\/b>. No setor de telecomunica\u00e7\u00f5es, isso pode ser muito mais complicado do que em uma loja online, pois \u00e9 necess\u00e1rio atender o cliente, oferecer 5 op\u00e7\u00f5es, e tudo isso acontece por um tempo, mas o carrinho vai sendo preenchido. Neste momento, uma falha pode ocorrer, mas isso n\u00e3o \u00e9 preocupante, pois acontece em modo interativo sob a supervis\u00e3o de um ser humano. <\/p>\n<p>Se o Data Center de Moscovo falhar repentinamente, ao mudar automaticamente para outro Data Center, continuaremos a opera\u00e7\u00e3o. Teoricamente, pode-se perder um produto no carrinho, mas voc\u00ea o v\u00ea, complementa novamente o carrinho e continua a trabalhar. Neste caso, o RTO = 0.<\/p>\n<p>Ao mesmo tempo, existe uma segunda op\u00e7\u00e3o: quando clicamos em \"enviar\", queremos que os dados n\u00e3o se percam. A partir desse momento, a automa\u00e7\u00e3o come\u00e7a a operar \u2014 isso j\u00e1 \u00e9 RPO = 0. A aplica\u00e7\u00e3o desses dois padr\u00f5es diferentes em um caso pode ser apenas um cluster geograficamente distribu\u00eddo com um mestre altern\u00e1vel, no outro caso, algum tipo de registro com qu\u00f3rum. Os padr\u00f5es podem variar, mas resolvemos o problema.<\/p>\n<p>Al\u00e9m disso, possuindo um registro de solicita\u00e7\u00f5es distribu\u00eddo, podemos tamb\u00e9m escalar tudo \u2014 ter v\u00e1rios gerentes e executores que acessam esse registro.<\/p>\n<p><img decoding=\"async\" alt=\"Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para Tarantool\" src=\"\/wp-content\/uploads\/2019\/09\/f8ef5f3f0cac371727dda29f457cf31d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Cassandra e Tarantool juntos<\/h2>\n<p>\nH\u00e1 mais um caso \u2014 <b>\"vitrine de saldos\"<\/b>. Aqui est\u00e1 um caso interessante de aplica\u00e7\u00e3o conjunta de Cassandra e Tarantool.<\/p>\n<p>Utilizamos Cassandra porque 2 bilh\u00f5es de chamadas por dia n\u00e3o \u00e9 o limite, e esse n\u00famero s\u00f3 tende a aumentar. Os profissionais de marketing gostam de segmentar o tr\u00e1fego por fontes, surgem cada vez mais detalhes das redes sociais, por exemplo. Tudo isso aumenta o hist\u00f3rico.<\/p>\n<blockquote><p>Cassandra permite escalabilidade horizontal para qualquer volume.<\/p><\/blockquote>\n<p>\nNos sentimos confort\u00e1veis com Cassandra, mas ela tem um problema \u2014 n\u00e3o \u00e9 boa em leitura. Na grava\u00e7\u00e3o, tudo est\u00e1 OK, 30.000 por segundo n\u00e3o \u00e9 problema \u2014 <b>o problema est\u00e1 na leitura.<\/b>.<\/p>\n<p>Por isso, surgiu o tema do cache, e decidimos resolver outro problema ao mesmo tempo: existe um antigo caso tradicional, onde o equipamento do switch de tarifa\u00e7\u00e3o online gera arquivos que carregamos no Cassandra. Lutamos com o problema do carregamento confi\u00e1vel desses arquivos, at\u00e9 mesmo utilizando, a conselho do gerente da IBM, solu\u00e7\u00f5es de transfer\u00eancia de arquivos \u2013 existem solu\u00e7\u00f5es que gerenciam a transfer\u00eancia de arquivos de forma eficiente, utilizando protocolo UDP, por exemplo, ao inv\u00e9s de TCP. Isso \u00e9 bom, mas ainda leva minutos, e enquanto n\u00e3o carregamos tudo, o operador no call center n\u00e3o pode informar ao cliente o que aconteceu com seu saldo \u2013 \u00e9 preciso esperar.<\/p>\n<p>Para que isso n\u00e3o aconte\u00e7a, n\u00f3s\u00a0<b>aplicamos reserva funcional paralela<\/b>. Quando enviamos um evento via Kafka para o Tarantool, recalculando agregados em tempo real, por exemplo, do dia de hoje, obtemos <b>um cache de saldos<\/b>, que pode fornecer saldos a qualquer velocidade, como 100 mil transa\u00e7\u00f5es por segundo e os mesmos 2 segundos.<\/p>\n<p>O objetivo \u00e9 que, ap\u00f3s fazer uma chamada, j\u00e1 ap\u00f3s 2 segundos, no painel pessoal, n\u00e3o apenas o saldo seja alterado, mas tamb\u00e9m a informa\u00e7\u00e3o sobre por que ele foi alterado.<\/p>\n<h2>Conclus\u00e3o<\/h2>\n<p>\nEsses foram exemplos de uso do Tarantool. Gostamos muito da transpar\u00eancia da Mail.ru e da sua disposi\u00e7\u00e3o em considerar diferentes casos. <\/p>\n<p>Para consultores da BCG ou McKinsey, Accenture ou IBM, j\u00e1 \u00e9 dif\u00edcil nos surpreender com algo novo \u2013 muito do que eles oferecem, n\u00f3s j\u00e1 fazemos, j\u00e1 fizemos ou planejamos fazer. Acho que o Tarantool ter\u00e1 um lugar digno em nossa pilha tecnol\u00f3gica e substituir\u00e1 muitas tecnologias j\u00e1 existentes. Estamos em fase ativa de desenvolvimento desse projeto.<\/p>\n<blockquote><p>A apresenta\u00e7\u00e3o de Oleg e Andrey foi uma das melhores na Tarantool Conference do ano passado, e em 17 de junho, Oleg Ivlev se apresentar\u00e1 na\u00a0<noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\">T+ Conference 2019<\/a><\/noindex>\u00a0com a palestra <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\/abstracts\/5429\">\u00abPor que o Tarantool em Enterprise\u00bb<\/a><\/noindex>. Tamb\u00e9m da MegaFon, Alexander Deulin apresentar\u00e1 com a palestra <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\/abstracts\/5418\">\u00abCaches do Tarantool e replica\u00e7\u00e3o do Oracle\u00bb<\/a><\/noindex>. Vamos descobrir o que mudou, quais planos foram realizados. Junte-se a n\u00f3s \u2013 a confer\u00eancia \u00e9 gratuita, apenas \u00e9 necess\u00e1rio <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.ontico.ru\/event\/join\/trc2019.html\">se registrar<\/a><\/noindex>. Todas <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.tarantool.io\/2019\/abstracts\/\">as palestras foram aceitas<\/a><\/noindex> e o programa da confer\u00eancia foi formado: novos casos, nova experi\u00eancia de uso do Tarantool, arquitetura, enterprise, tutoriais e microsservi\u00e7os.<\/p><\/blockquote>\n<p>Fonte: <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.3 - 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\/pt\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\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\/pt\/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\udd47Arquitetura de billing de nova gera\u00e7\u00e3o: transforma\u00e7\u00e3o com a migra\u00e7\u00e3o para o Tarantool | ProHoster","description":"Por que uma corpora\u00e7\u00e3o como a MegaFon precisaria do Tarantool no billing? \u00c0 primeira vista, parece que normalmente um fornecedor traz uma grande caixa, conecta o cabo na tomada \u2014 e pronto, est\u00e1 feito o billing!","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/arhitektura-billinga-novogo-pokoleniya-transformatsiya-s-perehodom-na-tarantool","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","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\/pt\/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\/pt\/wp-json\/wp\/v2\/posts\/37650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=37650"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/37650\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/28258"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=37650"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=37650"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=37650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}