O documento descreve a arquitetura de um sistema para um site com 1,5 milhão de usuários e alto tráfego. O sistema usa Nginx para balanceamento de carga e cache, Tornado para aplicação web, Memcached para cache, MySQL para banco de dados, e Beanstalkd para filas. O sistema é capaz de lidar com 15 mil conexões e 2 mil requisições por segundo.
- CartolaFC é o fantasy game oficial do campeonato brasileiro. - Existe desde 2005 - Falar como o jogo funciona
- 4 desenvolvedores - 5 meses de projeto - refazer uma aplicação que estava no ar desde 2005 - possibilitar o crescimento até 3 vezes
- leve - rápida - segura - deploy automatizado - escalável - baixo custo - 100% softwar livre - Desenvolvimento rápido e fácil - Fácil manuntenção
- 1 web server rodando - balenceamento de carga entre as 7 instâncias dos servidores de aplicação - capaz de processar 250 requisições por segundo
- 4 máquinas - 2 master, com replicação, um fica de backup em caso de falha - 2 slaves, cada um apontando para um master diferente - vip de escrita - vip de leitura - vip de pré-cache
- cada box possui uma instância de memcache rodando, com 2GB - o client do memcached, aplica um hash na chave para descobrir em qual instância o dado está - o dado pode estar local ou em outra instância - os dado cacheado pode ser um objeto ou uma referência para outro objeto
Uma aplicação escalável, é uma aplicação preparada para crescer. - Unidade operacional, box. Cada unidade é capaz de rodar a aplicação de forma isolada e independente. - Deploy automatizado. - Escalabilidade horizontal. Cada nova unidade, representa um aumento proporcional na capacidade de processamento
- Cada box é capaz de processar 250 requisições por segundo