microservices
TRANSCRIPT
Microservices
Mateus PradoSystems 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.”
MICROSERVERMICROSERVICES
MicroservERS
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
SMS
Twitter, Facebook
Smoke
own remediation scripts.
efficient
Notifications and auto-remediation
Cloud
Homemade
"They need to play." - lorieri
Q&A