/palestra-escalabilidade

VMs para testes/aprendizado de arquiteturas de aplicação distribuída.

Primary LanguageShellMIT LicenseMIT

Guia do Mochileiro pra Escalabilidade

Conjunto de máquinas virtuais para testar situações de alta escalabilidade, desenvolvida para estudos e uso em apresentações. Fornece um load balancer para duas máquinas PHP servindo uma aplicação através de um cache HTTP.

Você pode usar o diretório app para colocar sua própria aplicações, assim como modificar o Vagrantfile pra adicionar mais máquinas e provisioná-las como desejar.

PS: essas máquinas virtuais são para estudo, e não para benchmarks.

Como usar?!

Requisitos (ou as coisas que você deveria ter instalado):

As VMs são criadas usando Vagrant, supondo que você já tenha ele instalado no seu sistema:

$ vagrant plugin install vagrant-hostmanager
$ vagrant up

Com isso, todas as VMs estarão disponíveis, você pode acessá-las usando http://www.pascutti.localhost ou via SSH usando o Vagrant:

$ vagrant ssh www1

Eu só testei essa configuração no OSX mas elas deveriam funcionar também no Linux.

As máquinas virtuais

O Vagrant irá criar máquinas virtuais usando VirtualBox:

  1. www: O gateway (ou proxy) usando haproxy.
  2. cache1: A máquina de cache HTTP usando varnish
  3. www1: Apache + PHP servindo nossa aplicação usando [apache][] e php
  4. www2: Uma cópia idêntica da máquina acima.

Todas as máquinas usam no máximo 256 RAM, o que significa um total de 1G de RAM pra levantar todas as VMs. Se você tem 4GB de RAM no seu computador, se prepare pras lentidões ao levantar essas VMS.

Precisa de ajuda?

Crie uma issue! Hesitações não serão toleradas. Se estiver com vergonha, me envie um email em augusto.hp @ gmail.com.