É assim que fazemos na loja virtual do Angrybirds:
Apresentação em inglês no Magento Imagine 2012.
Apresentação em alemão no Meet Magento # 6.12
O alemão atual "PHP Magazin" também possui um artigo de 6 páginas (em alemão) com alguns detalhes
Depois de ler todas as apresentações de Fabrizio vinculadas acima várias vezes, acho que essa resposta é realmente a melhor, embora eu concorde que poderia usar mais explicações e uma extração das idéias principais das apresentações (especialmente porque o primeiro link original já havia foi 404 quando eu publiquei esta atualização).
A única coisa que gostaria de acrescentar aos conceitos-chave nas apresentações é que os avanços modernos nas tecnologias da AWS / concorrentes sugerem alguns ajustes ... como o fato de o Cloudfront oferecer suporte ao gzip para melhorias de desempenho da CDN agora, embora não seja tão rápido nem isso fornece rescisão SSL gratuita, como a CloudFlare oferece. O DNS da Route 53 também não é tão rápido ou rico em recursos como o CloudFlares, nem a AWS possui uma proteção comparável ao Web Application Firewall ou DDOS, todos incluídos nas ofertas do CloudFlare ...
Existem algumas outras maneiras possíveis de melhorar a apresentação original de Fabrizio, mas eu não seria um bom consultor se desse tudo TUDO que sabia em todas as postagens do StackExchange que respondi, agora? Além disso, algumas das ofertas mais recentes alterariam substancialmente as sugestões nas apresentações originais, as quais AINDA oferecem ótimo desempenho, mesmo que mais possam ser extraídas da AWS com diferentes opções usadas.
Resumo dos principais conceitos :
Conheça seus gargalos intimamente : e otimize adequadamente. Cada camada da pilha possui gargalos específicos (largura de banda, CPU, banco de dados) e a solução dos gargalos em cada camada exige uma solução diferente otimizada para cada desafio específico, embora o cache realmente seja o elemento comum em todos os níveis, o que leva a ...
Cache de todas as coisas : aproveite os sistemas da AWS sempre que possível (cache de dados do tipo Elasticache para Redis / Memcache, imagem de Cloudfront for Caching, js e ativos de css mais próximos dos usuários finais via CDN) e Varnish para acelerar as respostas da instância do servidor ao nível inicial de ativos solicitações de armazenamento em cache da CDN. Além disso, certifique-se de compactar e mininificar em seus sistemas de implantação ANTES de implantar nas CDNs
O escalonamento automático é essencial : a demanda muda frequentemente e com mais rapidez do que você pode monitorar e reagir manualmente. A adaptação a essas alterações em tempo real requer o uso de ferramentas de automação disponíveis na AWS, como o Auto-Scaling Groups, para ativar as partes do sistema mais adequadas a esta tarefa. A AWS lida com isso de forma transparente para CloudFront CDN, Route 53 DNS, Elastic Load Balancers e S3 Buckets, você precisa lidar com isso dimensionando e dimensionando automaticamente as instâncias do EC2 e apenas dimensionando / ajustando as camadas RDS e Elasticache
A automação é a única maneira de vincular tudo isso efetivamente : com tantos componentes inter-relacionados, alguns dos quais precisam ser inicializados no momento da implantação, alguns logo após a implantação, o gerenciamento de um sistema ajustado para obter o desempenho ideal requer automação. Alavancar a implantação e a automação de sistemas para limpeza de cache, aquecimento de cache, processamento de imagens, etc. é a única maneira razoável de gerenciar tantos subsistemas diferentes e mantê-los bem lubrificados e sem problemas.
Mas, na verdade, isso não é possível sem a automação de testes : com tantas partes móveis, algo quebrará com quase qualquer alteração. E você precisará alterar para acompanhar os desenvolvimentos no Magento e na AWS. E isso vai acontecer muitas vezes . Portanto, para manter o custo da mudança minimizado, todas as formas de teste precisam ser implementadas e automatizadas totalmente - desde testes de unidade até testes de integração, até testes funcionais baseados em Selenium do site real, lançados em configurações de testes reais que imitam o ambiente de produção. Agora você está realmente feliz por ter automatizado todos os seus processos de implantação, certo?