Faça uma pesquisa...
Generic filters
Exact matches only
Search in title
Search in content
Search in excerpt

Tipos de arquiteturas para o DialCloud+

Tipos de arquiteturas para o DialCloud+ na DialHost Internet

Tipos de arquiteturas: Chega uma hora que uma simples instância não consegue mais suportar o nível de acessos da sua aplicação. Para isso existe o DialCloud+, ele permite que você construa uma arquitetura mais complexa e que consiga lidar com toda a demanda de trafego da sua aplicação. Neste artigo vou apresentar algumas das mais comuns e mostrar os pôs e contras dela.

Uma instância para tudo

É o mais comum atualmente, banco de dados e aplicação rodando no mesmo ambiente. É muito usado em aplicações simples, e é rápido para ser configurado.

Pros:

  • Não demanda uma configuração avançada;

Contras:

  • Não é possível escalar e não possui uma boa performance, já que tudo roda no mesmo servidor;

Banco de dados dedicado

Uma instância ainda continua servindo as requisições web, porem agora possuí uma instância totalmente dedicada ao banco de dados em uma rede interna. É utilizado em aplicações que demandam mais processamento. O banco de dados para de disputar recursos com o serviço web (normalmente Apache e PHP).

Pros:

  • É possível usar uma instância com recursos diferenciados, otimizando uma para o banco de dados e outra para a aplicação.
  • Dá mais segurança aos dados, já que o banco de dados não fica disponível para acesso via internet.

Contras:

  • É mais complexo do que o primeiro caso
  • Podem acorrer problemas de performance devido a problemas de rede (entre o banco de dados e a instância para a aplicação)

Camada de cache na frente

É adicionado uma instância de cache na frente da instância de aplicação, assim o conteúdo mais visitado vai ser acessado pela instância de cache, e não vai exigir processamento da instância da aplicação dando espaço para outras requisições. É muito utilizado em blogs como o WordPress que ganham uma performance significante utilizando o cache.

Pros:

  • Melhora a performance reduzindo a carga de uso da instância da aplicação;
  • Melhora o tempo de resposta da aplicação;
  • Podem ajudar a proteger contra alguns ataques DDoS;

Contras:

  • Demanda bastante conhecimento, já que é necessário configurar bem o cache para que ele possa ser ter um beneficio real;
  • Se mal configurado pode reduzir a performance;

Usando load balancer

É adicionada uma instância dedicada à balancear a carga entre os servidores, se uma instância falhar, o load balancer tem o poder de redirecionar a demanda para outra instâncias e manter a sua aplicação online. Todos os planos DialCloud+ possuem um load balancer dedicado incluso.

Pros:

  • Possui suporte para oferecer escalonamento horizontal adicionado mais servidores;
  • Pode proteger contra ataques DDoS já que o load balancer é totalmente dedicado a redirecionar o trafego;

Contras:

  • Se for mal configurado ou não possuir recursos suficientes pode causar perda de performance;
  • Possui uma configuração que demanda mais complexidade, já que tarefas simples como adicionar um certificado se tornam mais complicadas;

Cluster de banco de dados

É criado um grupo de instâncias dedicado ao banco de dados, geralmente possuem configuração master-master, onde todos os bancos de dados podem ler e escrever os dados. Os bancos de dados se mantêm em sincronismos e um balanceador de carga é colocada em frente à eles, para que possam dividir com eficiência a quantidade de requisições. Geralmente utilizados em aplicações que precisam manter uma maior disponibilidade.

Pros:

  • Melhora a performance de escrita no banco de dados, já que elas podem ser espalhadas em infinitos bancos de dados;
  • Pode ser ainda mais otimizado, disponibilizando bancos somente para leitura e outros para escrita;

Contras:

  • A aplicação deve ser inteligente para saber balancear a carga entre as instâncias;
  • Se a sincronização de dados for assíncrona, é possível que os dados estejam fora de sincronia por questões de segundos;
  • Se o banco de dados master (central) falhar, é preciso arrumar-lo para que o cluster volte a funcionar;

Esse artigo te ajudou?

Não encontrou o que procurava? Faça uma nova busca!

Faça uma pesquisa...
Generic filters
Exact matches only
Search in title
Search in content
Search in excerpt