Sistemas Escaláveis na Nuvem com Replicação e Balanceamento de Carga | CentralServer
Soluções › Sistemas escaláveis na nuvem com replicação e balanceamento de carga
Sistemas escaláveis na nuvem com replicação e balanceamento de carga
A agilidade da computação em nuvem permite a criação de estruturas que podem ser escaladas continuamente para absorver o crescimento das aplicações. Para isso, é fundamental a adoção de um modelo de hospedagem adequado aliado a boas práticas de programação.
Via de regra, uma aplicação web é implantada inicialmente segundo um dos modelos a seguir:
A opção tradicional para escalabilidade de aplicações web e bancos de dados é baseada em cluster ativo-ativo com shared storage e heartbeat entre servidores. Contudo, essa alternativa tem um custo elevado de licenciamento e de manutenção.
Por outro lado, a facilidade de provisionamento de servidores virtuais, fornece novos modelos para ganho de escala, como mostrado a seguir:
Para que a aplicação possa tirar proveito desse layout indicamos a adoção das seguintes práticas de programação:
A principal ação a ser tomada pelo programador do site é a separação dos métodos de escrita e leitura de dados nos scripts. Isso permite a expansão futura com o uso de balanceamento de carga e replicação master/slave;
Outra ação recomendada é a segmentação de dados legados que consiste em criar bases adicionais para guardar os dados menos acessados. Nesse modelo, mantém-se na base principal somente as informações mais recentes (ex.: histórico de pedidos de 2012-2013). Já as informações que vão "esfriando" são passadas para bases adicionais (ex.: histórico de pedidos de 2010-2011, e assim por diante). Em relação à aplicação, a pesquisa do "histórico de pedidos" pode trazer os resultados mais recentes, seguidos de um link do tipo "Pesquisar pedidos anteriores a 2012";
O uso dessas técnicas em conjunto com os cenários apresentados acima permite eliminar gargalos e proporciona ao desenvolvedor um grande controle sobre a capacidade da aplicação.
Entre em contato conosco pelo 4000.1075, no horário comercial, ou clique aqui e descreva seu projeto para mais informações.