SlideShare a Scribd company logo
Microservices
Mateus Prado
Systems Engineer
Walmart.com LATAM
$ whoami
Hi, i’m Mateus,
Software and infrastructure architect.
I like Java, Ruby, C, Python, Cloud and Unix.
Frontend
components
Business
Data layer
Messaging
Common application architecture
L
B
Easy to deploy
New devs
Continuous Delivery
Try new technologies
Scalability
Monolithic
Microservices
The Unix Philosophy
The Unix Philosophy
Characteristics of
Microservices
Small, single responsibility
Fit in your head
“If a class is bigger than my head then it is too
big”
You can throw them away - rewrite, maintain
Easy to test.
Resilience
Yes, they will fail, inevitably happen when least desired.
Failures test in production?
Yes.
If you do not find, your customer will.
Deploy automation, continuous delivery…
Scale
…what you need to scale.
Run on multiple regions.
Many technologies
Use Ruby for GET /users/login
Use Java for POST /checkout
Use C for GET /metrics/time-first-byte
Use .Net for GET /about-us :)
Try languages, db, queue
–Johnny Appleseed
“Type a quote here.”
MICROSERVER
MICROSERVICES
MicroservERS
Microservices
Forever
sysadmin troop
...
Do not fear
Jenkins
Chef
Capistrano
Puppet
Rundeck
own scripts
Automate all the things
Too many log files
Log aggregation
Application
NFS to /var/www
VM0 VM2 VM3
Storage volumes
NFS to /var/lib/
rabbitmq/mnesia
S3
Distributed storages
Ah, so, look well…
Monitoring
Email
SMS
Twitter, Facebook
Smoke
own remediation scripts.
efficient
Notifications and auto-remediation
Cloud
Homemade
"They need to play." - lorieri
Q&A

More Related Content

Microservices