Esse documento é uma versão pública do documento de arquitetura da informação da Privacy Tools e tem como objetivo apresentar nosso plano de escalabilidade da plataforma de privacidade.
Escalabilidade do Sistema
Os recursos de escalabilidade da Privacy Tools na modalidade SAAS contam com uma estrutura de balanceamento com “round-and-robin” através de Nginx e mecanismo de auto-scaling com instâncias Docker em máquinas virtuais Ubuntu. A arquitetura simplificada abaixo se aplica a cada ambiente (teste, desenvolvimento, demo e produção).
Por se tratar de um documento público alguns elementos da arquitetura foram suprimidos como componentes de orquestração, portas específicas e VPN.
Como funciona o balanceamento e as decisões de carga
A Privacy Tools não utiliza cluster mas sim uma arquitetura dinâmica de balanceamento de carga onde todas as instância atuam para atender a demanda. Quando a demanda aumenta aloca-se mais instância para atender as requisições (horários de pico) e quando reduz existe um número menor de máquinas virtuais.
A base de cálculo é a carga de requisições e a utilização de recursos computacionais (load usage, cpu, memory and storage). A balanceadora baseada em Nginx foi configurada para trocar de instância em caso de “connect timeout” superior a 2seg. Caso ocorram sucessivas trocas o administrador é alertado para investigar possível inconsistência de balanceamento.