Jak CoinPaprika zbudowała skalowalną infrastrukturę Bare Metal dla rynku kryptowalut
servers

+ de 20 servidores bare metal

lines communicating

30 milhões de pedidos API por dia

cloud_migration2

2 TB de transferências diárias

O contexto

A CoinPaprika é uma plataforma de pesquisa que fornece dados do mercado de criptomoedas que abrangem transações centralizadas e descentralizadas. A plataforma rastreia mais de 57 mil criptomoedas e tokens, além de agregar dados de mais de 500 fontes, permitindo uma visão mais ampla e multidimensional do mercado. Com o objetivo de oferecer uma imagem o mais precisa possível das condições do mercado, analisa uma vasta gama de ativos digitais. Para isso, a empresa necessitava de uma infraestrutura que oferecesse um controlo total e custos previsíveis. Também precisava que essa infraestrutura fosse escalável, de modo que os volumes de dados e tráfego pudessem continuar a crescer. Em vez de soluções pay-as-you-go, a CoinPaprika escolheu os servidores bare metal da OVHcloud pela sua elevada estabilidade e desempenho. Esta escolha permite-lhe usufruir de um funcionamento fiável 24 horas por dia, 7 dias por semana, de previsibilidade orçamental e da flexibilidade necessária para expandir a infraestrutura.

O desafio

Desde o início, a CoinPaprika cresceu como uma plataforma altamente orientada para os dados. Atualmente, a plataforma trata, em média, mais de 30 milhões de pedidos API e cerca de 2 TB de transferências de dados por dia. Isto demonstra a necessidade de uma infraestrutura capaz de acompanhar o ritmo veloz do mercado de criptomoedas. À medida que as suas operações evoluíam, o controlo de custos tornava-se um desafio cada vez maior. Embora tenha testado ocasionalmente soluções tradicionais de Public Cloud, rapidamente se tornou claro que um modelo de preços baseado na transferência de dados e no uso de recursos de cálculo complicaria excessivamente o seu plano orçamental. Devido ao grande volume de dados e ao risco de picos de tráfego inesperados, os custos podiam aumentar de formas difíceis de estimar de um mês para o outro, o que afetava diretamente a estabilidade da empresa. Assim, o principal desafio da CoinPaprika era implementar uma solução que fornecesse uma plataforma segura e estável, sem deixar de manter o controlo sobre os custos da infraestrutura.

A solução

A empresa acabou por escolher a infraestrutura da OVHcloud, principalmente com base em servidores dedicados bare metal e complementando com VPS sempre que necessário, em função do papel dos diferentes componentes do sistema. Um elemento-chave da sua arquitetura é o vRack privado, que liga os servidores no âmbito de uma rede interna isolada. Isto permite separar o tráfego público da comunicação entre os componentes do sistema, garantindo um desempenho previsível mesmo em situações de cargas pesadas.

A infraestrutura segue um design em camadas, separando a distribuição de carga, os serviços de aplicação, o processamento de dados, o armazenamento e a colocação em cache. Os servidores bare metal foram atribuídos a funções específicas dentro do sistema, incluindo serviços de API (Go), o backend da plataforma (PHP), o processamento e a indexação de dados blockchain, os clusters de bases de dados (ClickHouse, MySQL) e o sistema de cache em várias camadas (Redis, Memcached, Varnish). Esta arquitetura isola as cargas de cálculo intensivo das operações de leitura/escrita elevadas e dos processos sensíveis à latência. Como resultado, os componentes do sistema funcionam de forma independente, sem se afetar mutuamente, mesmo quando sujeitos a pressões.

O resultado

Ao implementar uma infraestrutura dedicada no bare metal da OVHcloud, a CoinPaprika conseguiu estabelecer um ambiente estável para o processamento de dados em larga escala. A arquitetura, baseada em mais de 20 servidores bare metal ligados através de uma rede vRack privada, permitiu uma separação clara das funções do sistema e uma alocação precisa dos recursos em função das necessidades das cargas de trabalho.

Esta estrutura garante uma alta disponibilidade de serviço sob cargas constantes e intensivas, ao mesmo tempo que oferece previsibilidade operacional. A escalabilidade é conseguida expandindo camadas específicas — como a API, o processamento de dados ou as camadas de bases de dados —, sem que seja necessário efetuar migrações dispendiosas ou reformular completamente a plataforma.

Como resultado, a CoinPaprika pode continuar a desenvolver os seus serviços de forma controlada e a longo prazo, mantendo a estabilidade do sistema e a previsibilidade dos custos da infraestrutura.

À nossa escala de dados e tráfego, a previsibilidade é essencial. Graças à infraestrutura baseada nos servidores dedicados da OVHcloud, podemos continuar a desenvolver os nossos produtos sem temer que os picos de procura inesperados levem a custos descontrolados. Isso beneficia diretamente a estabilidade do nosso negócio e o crescimento contínuo dos nossos serviços.

Radosław Wesołowski, CEO da CoinPaprika

CoinPaprika schema