summaryrefslogtreecommitdiff
path: root/day2/microservices-gone-wrong.txt
diff options
context:
space:
mode:
Diffstat (limited to 'day2/microservices-gone-wrong.txt')
-rw-r--r--day2/microservices-gone-wrong.txt43
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