Microservicios es una aproximacion de desarrollo en pequeños servicios, independientes uno del otro, que pueden ejecutarse en procesos aislados y que se comunican mediante un mecanismo ligero basado en api http
19. Is an approach to developing a single application
as a suite of small services, each running in its
own process and communicating with lightweight
mechanisms, often an HTTP resource API.
- Martin fowler
http://martinfowler.com/articles/microservices.html
35. Versionado
✓ ¿Se versiona por servicio?
✓ NO acoplar servicios por DB
✓ Un componente puede ser un servicio
Componentes
Productos
✓ Productos en vez de proyectos
36. ✓ Centralizar logs (Loggly, Logstash)
✓ Centralizar monitoreo (Zabix, New Relic)
Monitoreo
✓ 1 servidor → N servidores / containers
✓ 1 app → N servicos
✓ Troubleshooting
Monitoreo
37. ✓ 1 deploy → N deploy
✓ AWS
✓ Vagrant / Docker
✓ Puppet / Chef
Automatizar deploy
Testing
✓ ¿Como probar enteramente la solución?