Linha de fundo
@ HTTP500 está certo: a escalabilidade é uma tarefa não trivial. Mesmo que tudo seja baseado em ferramentas de infraestrutura como o EC2 LoadBalancer & co, você ainda precisa de uma pequena equipe de especialistas para operá-lo.
Alta disponibilidade para hospedagem na Web do LAMP
Vamos supor que você queira garantir que você possa dimensionar o número X de impressões de websites rapidamente. No entanto, para ajudá-lo, é preciso mais informações sobre o seu aplicativo. Eu ainda recomendo verificar as soluções conforme proposto por equipes como Amazee , fortrabbit , etc.
Para dar algumas ideias para "Introdução" , aqui está um diagrama (cortesia de Amazee ):
OesquemailustrabemcomoasolicitaçãoHTTPéexibida(apartirdobalanceadordecarga).Talsoluçãoprecisariademuitoplanejamento,oqueoajudaráadecidirsevocêrealmentevaiounãofazê-lo.
Paraconseguirumping-pongprimitivoeumrespawn-vocêprecisarádeumfailoverdebatimentoscardíacos.Eurecomendariatentaro
- Um balanceador de carga (assim como no diagrama - eu recomendo ngnix , escrito por um russo esperto)
- Apache (servidor web do aplicativo PHP)
- Memcache ou outro tipo de servidores de cache (aqui seu aplicativo pode ser mais inteligente se souber do memcache)
- Sistema de arquivos semelhante ao NFS, mas não o NFS! O GlusterFS é um bom candidato.
- Cluster de banco de dados do escravo-mestre Mysql
Como você vê, você terá que automatizar o monitoramento, ou seja, fazer algo como um script baseado em keepalive que circula e garante que tudo esteja ativo. Esse script pode verificar uma "pontuação de disponibilidade" em milissegundos para cada instância.
PS
Continue com os slides link Espero que isso lhe dê uma visão melhor de como implementar o que você está fazendo.