diff options
Diffstat (limited to 'day2/microservices-gone-wrong.txt')
-rw-r--r-- | day2/microservices-gone-wrong.txt | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/day2/microservices-gone-wrong.txt b/day2/microservices-gone-wrong.txt new file mode 100644 index 0000000..88a5096 --- /dev/null +++ b/day2/microservices-gone-wrong.txt @@ -0,0 +1,43 @@ +# Microservices gone wrong + +Anthony Ferrara +https://docs.google.com/presentation/d/1Ogejf47b7k0RWU-7lE_uBsCmJxL3CvydOl8fVukuQ_4/edit + +- starting from scratch + +api gateway +middleware for external requests +message-bus rabbitMQ + +Service per domain entity + +Meta service using ES +Kurbenetes + +Why local dev failed? +Slow. +Inconsistent +Would break + +mainly: "Someone elses problem" - all devs + +Production release took 1 week +Cost of context switching + +Smoke Test + +- Lessons Learned + + - service call's are unreliable + - "microlyth" + +1. Don't do micorservices + a. unless you have a dedicated tooling and automation team +2. Start with big services + a/ Split if you require +3. Automate everything + a spin up, deployment migration, backup state restoration Elliptic +4. Don't plan for failure, live it + a. failure modes should rebuilt first, tested first, and relied upon +5. Define SLO early + a. Define business objectives for each service and system before building |