Production Hardened Services short...Production-Ready Microservices When we refer to an application...
Transcript of Production Hardened Services short...Production-Ready Microservices When we refer to an application...
![Page 1: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/1.jpg)
Nathaniel T. Schutta@ntschutta
ProductionHardenedServices
![Page 2: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/2.jpg)
Ah services!
![Page 3: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/3.jpg)
Service all the things!
![Page 4: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/4.jpg)
Seems like everything is aaS these days…
![Page 5: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/5.jpg)
Infrastructure. Container. Platform. Software. Function. Pizza.
![Page 6: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/6.jpg)
Pretty sure about that last one…
![Page 7: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/7.jpg)
Architecture as a Service…
![Page 8: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/8.jpg)
How many services do *you* have in your world these days?
![Page 9: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/9.jpg)
Turns out, microservices aren’t a panacea!
![Page 10: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/10.jpg)
It can be a real challenge to maintain a healthy micro(services)biome.
![Page 11: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/11.jpg)
Should we just go back to monoliths we release semiannually?
![Page 12: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/12.jpg)
Is it too late to change careers?
![Page 13: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/13.jpg)
All services are equal. Some services are more equal than others.
![Page 14: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/14.jpg)
Defining our SLOs is a critical step towards production hardened services.
![Page 15: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/15.jpg)
Availability is one of our most important objectives.
![Page 16: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/16.jpg)
What is the availability goal for this specific service?
![Page 17: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/17.jpg)
Everyone wants 99.999%.
![Page 18: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/18.jpg)
Everyone wants hot/hot.
![Page 19: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/19.jpg)
Until they see the price tag.
![Page 20: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/20.jpg)
If you have to ask…
![Page 21: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/21.jpg)
— Susan J. FowlerProduction-Ready Microservices
Whenwerefertoanapplicationormicroserviceas“production-ready,”weconferagreatdealoftrustuponit:wetrustittobehavereasonably,wetrustittoperformreliably,wetrustittogetthejobdone…
![Page 22: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/22.jpg)
How do we know we can trust a service?
![Page 23: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/23.jpg)
Consider having a checklist.
![Page 24: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/24.jpg)
A checklist? Seriously?
![Page 25: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/25.jpg)
http://atulgawande.com/book/the-checklist-manifesto/
![Page 26: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/26.jpg)
You know who uses checklists?
![Page 27: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/27.jpg)
Pilots. Surgeons.
![Page 28: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/28.jpg)
Should be quantifiable and measurable.
![Page 29: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/29.jpg)
“Fast” won’t cut it.
![Page 30: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/30.jpg)
Stability.
![Page 31: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/31.jpg)
Reliability.
![Page 32: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/32.jpg)
Scalability.
![Page 33: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/33.jpg)
Fault tolerance.
![Page 34: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/34.jpg)
Performance.
![Page 35: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/35.jpg)
Monitoring.
![Page 36: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/36.jpg)
Documentation.
![Page 37: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/37.jpg)
I know what some of you are thinking…
![Page 38: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/38.jpg)
I don’t have time for all this.
![Page 39: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/39.jpg)
We need to MOVE FAST. And break things…
![Page 40: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/40.jpg)
We’re Agile. With a capital A.
![Page 41: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/41.jpg)
How is your velocity when an outage brings your business to a halt?
![Page 42: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/42.jpg)
Requires buy in from the grass roots level as well as management.
![Page 43: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/43.jpg)
Stable and Reliable.
![Page 44: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/44.jpg)
Our services are evolving. Constantly.
![Page 45: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/45.jpg)
Feature not a bug.
![Page 46: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/46.jpg)
Development moves quickly.
![Page 47: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/47.jpg)
Always Be Releasing.
![Page 48: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/48.jpg)
Bit like spinning plates…
![Page 49: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/49.jpg)
Just takes one wobble to take down the entire system.
![Page 50: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/50.jpg)
How do we make sure our services are stable and reliable?
![Page 51: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/51.jpg)
Consistent development process.
![Page 52: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/52.jpg)
Code passes new and existing tests before committing code.
![Page 53: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/53.jpg)
Pair programming. Code reviews.
![Page 54: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/54.jpg)
External, automated build system.
![Page 55: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/55.jpg)
Build pipeline.
![Page 56: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/56.jpg)
Feature toggles.
![Page 57: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/57.jpg)
Thorough testing.
![Page 58: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/58.jpg)
Linting, unit tests, regression tests, integration tests, etc.
![Page 59: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/59.jpg)
Deployment pipeline.
![Page 60: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/60.jpg)
Must have a standardized deployment process.
![Page 61: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/61.jpg)
Staging, canary, blue/green deploys.
![Page 62: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/62.jpg)
Find issues *before* our service hits production servers.
![Page 63: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/63.jpg)
Staging - exact copy of production.
![Page 64: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/64.jpg)
Real world without real world traffic.
![Page 65: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/65.jpg)
Capacity is often a percentage of production.
![Page 66: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/66.jpg)
Though some organizations have identical prod/staging hardware.
![Page 67: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/67.jpg)
Staging is the real deal.
![Page 68: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/68.jpg)
Code should have already passed all our internal checks.
![Page 69: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/69.jpg)
Unit tests, linting, QA, customer acceptance etc.
![Page 70: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/70.jpg)
If it checks out in staging, it is going to canary - with real traffic.
![Page 71: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/71.jpg)
Canary - aka the canary in the coal mine.
![Page 72: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/72.jpg)
Find out if we have issues before we do a full production push.
![Page 73: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/73.jpg)
Some percentage of production - 5% or 10%.
![Page 74: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/74.jpg)
Can be a sliding scale too - start with 5%, move up to 20% etc.
![Page 75: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/75.jpg)
Canaries are serving real production traffic.
![Page 76: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/76.jpg)
Find errors? Automated rollbacks.
![Page 77: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/77.jpg)
How long should our canary stage last? As long as it takes. Hours. Days.
![Page 78: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/78.jpg)
¯\_(ツ)_/¯
![Page 79: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/79.jpg)
https://twitter.com/KentBeck/status/596007846887628801
![Page 80: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/80.jpg)
How about replacing merge on GitHub.
![Page 81: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/81.jpg)
On the fly.
![Page 82: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/82.jpg)
![Page 83: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/83.jpg)
![Page 84: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/84.jpg)
How much do you agonize over a CSS change?
![Page 85: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/85.jpg)
At this point, we should have very few production issues.
![Page 86: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/86.jpg)
Most likely, we’ve found the problems in staging, canary, etc.
![Page 87: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/87.jpg)
Your deployment pipeline should be *the* path to production. Period.
![Page 88: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/88.jpg)
Avoid the temptation to perform hotfixes.
![Page 89: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/89.jpg)
— Susan J. FowlerProduction-Ready Microservices
Bypassingtheinitialphasesofthedeploymentpipelineoftenintroducesnewbugsintoproduction,asemergencycodefixesruntheriskofnotbeingproperlytested.
![Page 90: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/90.jpg)
I’ve seen that movie…
![Page 91: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/91.jpg)
Rollback to the last stable build.
![Page 92: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/92.jpg)
Must also understand our dependencies.
![Page 93: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/93.jpg)
And plan for their inevitable failure.
![Page 94: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/94.jpg)
Dependency graphs get kind of crazy.
![Page 95: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/95.jpg)
http
://ev
olut
iona
ryar
chite
ctur
e.co
m
![Page 96: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/96.jpg)
“Death Star Architecture.”
https://www.slideshare.net/adriancockcroft/goto-berlin
![Page 97: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/97.jpg)
How do we mitigate a dependency failure?
![Page 98: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/98.jpg)
Caching. Alternative services. Backups.
![Page 99: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/99.jpg)
Depends on the criticality.
![Page 100: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/100.jpg)
Insureds will submit claims during a natural disaster.
![Page 101: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/101.jpg)
Better be able to accept the claim.
![Page 102: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/102.jpg)
But we might not work on it immediately.
![Page 103: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/103.jpg)
Maybe we need to post messages to a queue, process when we’re up.
![Page 104: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/104.jpg)
Our services should have a health check.
![Page 105: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/105.jpg)
![Page 106: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/106.jpg)
Always Be (health) Checking.
![Page 107: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/107.jpg)
Not healthy? Don’t route traffic to it.
![Page 108: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/108.jpg)
Circuit breakers for fun and profit.
![Page 109: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/109.jpg)
![Page 110: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/110.jpg)
Defend the neighborhood as it were.
![Page 111: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/111.jpg)
Services won’t live forever. Plan for decommissioning.
![Page 112: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/112.jpg)
Need a deprecation period.
![Page 113: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/113.jpg)
Typically more a cultural issue than a technical one.
![Page 114: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/114.jpg)
Monitoring is key - are we still seeing calls to the old endpoint?
![Page 115: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/115.jpg)
Don’t just abandon a service!
![Page 116: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/116.jpg)
Scalable.
![Page 117: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/117.jpg)
We need to know the growth scale of our service.
![Page 118: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/118.jpg)
How many requests can we handle per second? RPS.
![Page 119: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/119.jpg)
We can look at current load levels.
![Page 120: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/120.jpg)
We can (and should!) perform load tests.
![Page 121: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/121.jpg)
Potential fitness function…
![Page 122: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/122.jpg)
Very important but we need to look beyond just our service.
![Page 123: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/123.jpg)
A given service is just one part of a larger world.
![Page 124: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/124.jpg)
What is the qualitative growth scale?
![Page 125: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/125.jpg)
Linked to our business.
![Page 126: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/126.jpg)
Do we need to scale by the number of users? Number of orders?
![Page 127: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/127.jpg)
Isn’t tied to a particular service!
![Page 128: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/128.jpg)
We will need to talk to our business partners to understand the drivers.
![Page 129: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/129.jpg)
We will have to translate those to our specific services.
![Page 130: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/130.jpg)
Accurate growth scales are vital.
![Page 131: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/131.jpg)
All services are equal. Some services are more equal than others.
![Page 132: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/132.jpg)
Business critical services should have priority.
![Page 133: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/133.jpg)
Resource isolation is your friend…shared hardware hurts.
![Page 134: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/134.jpg)
May want to engage in some capacity planning.
![Page 135: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/135.jpg)
Ensure we have sufficient budget.
![Page 136: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/136.jpg)
Or change your process…
![Page 137: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/137.jpg)
Don’t neglect your dependencies.
![Page 138: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/138.jpg)
Can they scale with you?
![Page 139: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/139.jpg)
Better make sure they can!
![Page 140: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/140.jpg)
Collaborate. Communicate.
![Page 141: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/141.jpg)
Have a scalability review with the services you rely on.
![Page 142: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/142.jpg)
What does your data growth look like?
![Page 143: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/143.jpg)
What type of database makes the most sense? Relational? NoSQL?
![Page 144: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/144.jpg)
Is eventual consistency ok?
![Page 145: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/145.jpg)
Are you read heavy? Write heavy?
![Page 146: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/146.jpg)
How do we scale our database?
![Page 147: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/147.jpg)
cf scale FOO doesn’t exempt us from thinking through scalability.
![Page 148: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/148.jpg)
Fault Tolerant.
![Page 149: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/149.jpg)
We can’t prevent catastrophes. But we can build failure resistant services.
![Page 150: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/150.jpg)
Hope for the best…prepare for the worst.
![Page 151: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/151.jpg)
![Page 152: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/152.jpg)
— ROBERT MCMILLAN
Hamiltonwantedtoadderror-checkingcodetotheApollosystemthatwouldpreventthisfrommessingupthesystems.Butthatseemedexcessivetoherhigher-ups.“Everyonesaid,‘Thatwouldneverhappen,’”Hamiltonremembers.Butitdid.RightaroundChristmas1968.
https://www.wired.com/2015/10/margaret-hamilton-nasa-apollo/
![Page 153: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/153.jpg)
Failures, uh find a way.
![Page 154: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/154.jpg)
Eliminate single points of failure!
![Page 155: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/155.jpg)
Not sure what they might be?
![Page 156: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/156.jpg)
Draw up the architecture.
![Page 157: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/157.jpg)
What happens if *this* fails?
![Page 158: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/158.jpg)
It can’t fail? Yeah it can - what happens if it does?
![Page 159: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/159.jpg)
Think through how our service could fail.
![Page 160: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/160.jpg)
It is hard. We are really good at thinking through the happy path.
![Page 161: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/161.jpg)
But we need to think about the road less traveled.
![Page 162: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/162.jpg)
Test for these failure scenarios. Does our service respond appropriately?
![Page 163: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/163.jpg)
Only one way to really know…
![Page 164: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/164.jpg)
http
s://
gith
ub.c
om/N
etfli
x/Si
mia
nArm
y
![Page 165: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/165.jpg)
Chaos engineering.
http://principlesofchaos.org
![Page 166: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/166.jpg)
Intentionally break things.
![Page 167: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/167.jpg)
Add latency.
![Page 168: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/168.jpg)
Shut down an availability zone.
![Page 169: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/169.jpg)
Kill a machine.
![Page 170: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/170.jpg)
Shouldn’t be ad hoc! Monitor and log.
![Page 171: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/171.jpg)
Chaos can go rogue…
![Page 172: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/172.jpg)
Some things will fall through the proverbial cracks.
![Page 173: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/173.jpg)
Need to detect failures.
![Page 174: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/174.jpg)
And add them to our testing suite.
![Page 175: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/175.jpg)
Failures could be internal or external.
![Page 176: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/176.jpg)
How is your exception handling?
![Page 177: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/177.jpg)
Code will have bugs. Test thoroughly.
![Page 178: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/178.jpg)
Extremely common for a dependency to cause our service to fail!
![Page 179: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/179.jpg)
Downstream service…or a 3rd party library.
![Page 180: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/180.jpg)
How does your service recover from a failure?
![Page 181: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/181.jpg)
Resiliency testing.
![Page 182: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/182.jpg)
Make your service fail. Repeatedly.
![Page 183: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/183.jpg)
Load testing. But we covered that!
![Page 184: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/184.jpg)
Where do you run your load tests?
![Page 185: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/185.jpg)
Staging?
![Page 186: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/186.jpg)
Good place to start…however it isn’t the same as testing in production.
![Page 187: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/187.jpg)
![Page 188: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/188.jpg)
— Sam Newman Building Microservices
…anecommercecompanythataccidentallyranitstestsagainstitsproductionorderingsystems.Itdidn’trealizeitsmistakeuntilalargenumberofwashingmachinesarrivedattheheadoffice.
![Page 189: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/189.jpg)
Synthetic transactions.
![Page 190: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/190.jpg)
And be sure everyone knows when you’re doing it.
![Page 191: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/191.jpg)
Especially downstream dependencies!
![Page 192: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/192.jpg)
Load testing shouldn’t be a one off.
![Page 193: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/193.jpg)
Can be automated and run on a cadence.
![Page 194: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/194.jpg)
Probably not during your peek traffic hours mind you…
![Page 195: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/195.jpg)
Ultimate goal - reduce the impact on our users.
![Page 196: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/196.jpg)
Roll back.
![Page 197: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/197.jpg)
Fail over.
![Page 198: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/198.jpg)
Automate, automate, automate.
![Page 199: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/199.jpg)
All services are equal. Some services are more equal than others.
![Page 200: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/200.jpg)
What is the impact of *this* service failing?
![Page 201: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/201.jpg)
Categorize incidents and outages by severity and scope.
![Page 202: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/202.jpg)
Severity - impact to the business.
![Page 203: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/203.jpg)
Scope - how much of the business is impacted?
![Page 204: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/204.jpg)
Monitored.
![Page 205: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/205.jpg)
Four components to monitoring.
![Page 206: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/206.jpg)
Logging.
![Page 207: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/207.jpg)
What would you say my service is doing?
![Page 208: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/208.jpg)
Log anything that is useful.
![Page 209: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/209.jpg)
Just don’t put in any personally identifying information (PII).
![Page 210: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/210.jpg)
Ever.
![Page 211: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/211.jpg)
Some things alone aren’t PII but when combined with other items…
![Page 212: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/212.jpg)
Tracing can be difficult. Correlation IDs help.
![Page 213: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/213.jpg)
Dashboards.
![Page 214: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/214.jpg)
View the health of a service.
![Page 215: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/215.jpg)
More on this in a minute!
![Page 216: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/216.jpg)
Alerting.
![Page 217: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/217.jpg)
A key metric is out of band.
![Page 218: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/218.jpg)
Allows us to detect an issue and fix it before our customers even notice.
![Page 219: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/219.jpg)
Pager duty.
![Page 220: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/220.jpg)
Must be sustainable.
![Page 221: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/221.jpg)
Provide clear, concise on call documentation.
![Page 222: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/222.jpg)
Vital that we think about just what we should be monitoring.
![Page 223: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/223.jpg)
What *is* a key metric?
![Page 224: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/224.jpg)
Some pertain solely to the infrastructure our service runs on.
![Page 225: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/225.jpg)
CPU utilization, RAM utilization, threads, database connections…
![Page 226: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/226.jpg)
These often impact more than just our service.
![Page 227: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/227.jpg)
Others key metrics are specific to our service.
![Page 228: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/228.jpg)
Additionally we need to know the availability, latency, response time…
![Page 229: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/229.jpg)
Basically anything that we identified earlier as part of our SLO.
![Page 230: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/230.jpg)
Monitor errors and exceptions as well.
![Page 231: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/231.jpg)
Identify normal, warning and critical thresholds for your metrics.
![Page 232: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/232.jpg)
Can be hard to figure out early on. Need a certain amount of history.
![Page 233: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/233.jpg)
Not just a prod thing. We need to monitor staging. Validates the monitors.
![Page 234: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/234.jpg)
Metrics should be displayed on a dashboard of some sort.
![Page 235: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/235.jpg)
![Page 236: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/236.jpg)
![Page 237: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/237.jpg)
![Page 238: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/238.jpg)
But we should be alerted when things start to go wonky.
![Page 239: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/239.jpg)
We shouldn’t be staring at our dashboards all day!
![Page 240: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/240.jpg)
Alert on all of our key metrics, SLOs etc.
![Page 241: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/241.jpg)
Absence of a key metric is also an avertable offense!
![Page 242: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/242.jpg)
Alerts should be actionable.
![Page 243: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/243.jpg)
Create an on call book to assist team monitoring the service.
![Page 244: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/244.jpg)
How to mitigate, resolve, etc.
![Page 245: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/245.jpg)
Step by step instructions. Do not make asumptions.
![Page 246: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/246.jpg)
Follow the 3 AM Rule.
![Page 247: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/247.jpg)
Write it assuming the person reading will be half asleep.
![Page 248: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/248.jpg)
Do not be clever. Think simple.
![Page 249: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/249.jpg)
— Archilochus
Wedon'trisetothelevelofourexpectations,wefalltothelevelofourtraining.
![Page 250: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/250.jpg)
https://mobile.twitter.com/walfieee/status/953848431184875520
![Page 251: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/251.jpg)
This all implies an on call rotation.
![Page 252: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/252.jpg)
Sorry.
![Page 253: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/253.jpg)
Everyone should do it. Rotations need to be sustainable.
![Page 254: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/254.jpg)
Pair up.
![Page 255: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/255.jpg)
One week or less with at least a month off in between.
![Page 256: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/256.jpg)
One developer on call for 3 years?
![Page 257: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/257.jpg)
Not so much.
![Page 258: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/258.jpg)
Documented.
![Page 259: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/259.jpg)
What does your service do?
![Page 260: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/260.jpg)
How does it work?
![Page 261: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/261.jpg)
What does it depend on?
![Page 262: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/262.jpg)
Ever say something like “the documentation is useless”?
![Page 263: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/263.jpg)
It doesn’t have to be.
![Page 264: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/264.jpg)
Golden rule!
![Page 265: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/265.jpg)
Do it for those that come after you.
![Page 266: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/266.jpg)
Don’t forget, sometimes *you* are the person that comes after you!
![Page 267: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/267.jpg)
How long does it take for a new team member to be productive? Weeks?
![Page 268: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/268.jpg)
Months?
![Page 269: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/269.jpg)
Solid onboarding guide.
![Page 270: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/270.jpg)
Make sure it is updated.
![Page 271: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/271.jpg)
Documentation should be easy to find.
![Page 272: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/272.jpg)
Probably a website/wiki.
![Page 273: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/273.jpg)
Updating the wiki should be a normal part of the developer workflow.
![Page 274: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/274.jpg)
Consider a simple (low ceremony) template.
![Page 275: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/275.jpg)
Description - what does your service do? Don’t skimp here.
![Page 276: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/276.jpg)
An architectural diagram or three.
![Page 277: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/277.jpg)
Contact information as well as the on call rotation.
![Page 278: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/278.jpg)
Links to helpful things like the repo, dashboard link, on call book.
![Page 279: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/279.jpg)
FAQ.
![Page 280: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/280.jpg)
Onboarding/development guide.
![Page 281: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/281.jpg)
Coding standards.
![Page 282: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/282.jpg)
Development pipeline.
![Page 283: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/283.jpg)
Whatever helps the team understand.
![Page 284: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/284.jpg)
Everyone should “get it” and be able to describe it. So have them do it.
![Page 285: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/285.jpg)
Shouldn’t be a static thing!
![Page 286: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/286.jpg)
Documentation should be reviewed along with the architecture.
![Page 287: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/287.jpg)
Production Readiness Reviews.
![Page 288: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/288.jpg)
Not a one time, up front thing.
![Page 289: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/289.jpg)
Services should be reviewed and audited regularly.
![Page 290: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/290.jpg)
Does not have to be high ceremony!
![Page 291: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/291.jpg)
Get the team together - SREs, Devs, etc. Draw up the architecture.
![Page 292: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/292.jpg)
Do we have a shared understanding of what the system does?
![Page 293: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/293.jpg)
Do we have a shared understanding of our requirements?
![Page 294: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/294.jpg)
As we talk through it, we will discover bottlenecks.
![Page 295: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/295.jpg)
The Wombat service has a lower availability level than we need.
![Page 296: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/296.jpg)
We will find interesting failure cases.
![Page 297: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/297.jpg)
“When month end falls on the Super Blue Blood Moon.”
![Page 298: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/298.jpg)
Review should result in a new architecture diagram or two.
![Page 299: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/299.jpg)
And probably some new items on the backlog.
![Page 300: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/300.jpg)
Perform an audit.
![Page 301: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/301.jpg)
Go back to your checklist. Does the service meet our requirements?
![Page 302: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/302.jpg)
Probably results in some new things in our backlog!
![Page 303: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/303.jpg)
Now we can create a production readiness roadmap.
![Page 304: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/304.jpg)
What do we need to fix and when can/should we fix it.
![Page 305: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/305.jpg)
Drive prioritization of the work.
![Page 306: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/306.jpg)
A lot of this is manual. But some of it can be automated!
![Page 307: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/307.jpg)
http
://ev
olut
iona
ryar
chite
ctur
e.co
m
![Page 308: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/308.jpg)
Fitness functions!
![Page 309: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/309.jpg)
Basically, a set of tests we execute to validate our architecture.
![Page 310: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/310.jpg)
How close does this particular design get us to our objectives?
![Page 311: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/311.jpg)
Ideally, all automated. But we may need some manual verifications.
![Page 312: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/312.jpg)
For example…
![Page 313: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/313.jpg)
All service calls must respond within 100 ms.
![Page 314: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/314.jpg)
Cyclomatic complexity shall not exceed X.
![Page 315: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/315.jpg)
Hard failure of an application will spin up a new instance.
![Page 316: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/316.jpg)
Reviews and audits should not be additional red tape.
![Page 317: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/317.jpg)
Should not be overly bureaucratic.
![Page 318: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/318.jpg)
Couple of hours…depending on the complexity of the system.
![Page 319: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/319.jpg)
Next steps.
![Page 320: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/320.jpg)
Check your culture.
![Page 321: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/321.jpg)
Work on that checklist.
![Page 322: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/322.jpg)
Review some services!
![Page 323: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/323.jpg)
Adapt and change.
![Page 324: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/324.jpg)
Good luck!
![Page 325: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/325.jpg)
Questions?
![Page 326: Production Hardened Services short...Production-Ready Microservices When we refer to an application or microservice as “production-ready,” we confer a great deal of trust upon](https://reader036.fdocuments.net/reader036/viewer/2022071007/5fc4be511d54c714de7f0b17/html5/thumbnails/326.jpg)
NathanielT.Schutta@ntschutta
Thanks!I’m a Software
Architect, Now What?
with Nate Shutta
Modeling for Software
Architectswith Nate Shutta
Presentation Patterns
with Neal Ford & Nate Schutta