O documento discute ferramentas, serviços e práticas para implementar aplicações Rails na nuvem. Ele fornece detalhes sobre ferramentas como Ruby, Phusion Passenger, Nginx, Chef e Capistrano, além de serviços de nuvem como Amazon EC2, Heroku e Engine Yard. O documento também aborda práticas recomendadas como configuração automatizada, deploy contínuo, replicação e alta disponibilidade.
1. Rails nas Nuvens
@sauloarruda
Imagem: http://www.flickr.com/photos/jan2you/2646026559/sizes/z/in/photostream/
2. by “Saulo Arruda”
• Sócio e um dos fundadores da
• 29 anos
• Pai de 2 filhas
• 12 anos de código e cabelos brancos
• Programador, DevOP, cantora, atriz, modelo...
3. O que temos?
• Ferramentas
• Serviços
• Práticas
• E agora?
27. Configuração do
Servidor
• Automatizar a configuração com Chef:
• Instalar RVM e Ruby
• Instalar Nginx/Apache
• Instalar MySQL
• Outras configs (segurança, backup,
replicação, load balancer, etc)
• Primeiro Deploy
28. Deploy Contínuo
• Deploy com Capistrano
• Configurar Git/SVN
• Configurar cap no projeto
• Permissões e tarefas
• Configurar nós
29. Replicação
• Replicação do MySQL
• Replicação de Arquivos (rsync)
• Uso de S3
• Uso de CDN
30. Backup
• RDiff
• Sincronização de arquivos com
versionamento
• Bacula
• Solução mais evoluída
• MySQL Dump
31. Testar carga e
performance
• Detectar pontos fracos
• Oportunidades de otimização
• Simulação de horários de pico
• Medição de tempo de resposta
• Medição do consumo de recursos
32. Alta Disponibilidade
• Load Balancer
• Monitorar e subir instâncias
automaticamente
• Memcache
• Cluster de MySQL
• Sistema de Filas
• NoSQL