microservices in your datacentre
TRANSCRIPT
![Page 1: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/1.jpg)
digitalocean.com
Phil Calçado @pcalcado
philcalcado.com
Microservices in your Datacentre
![Page 2: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/2.jpg)
digitalocean.com
Phil Calçado @pcalcado
philcalcado.com
Microservices in your Datacentre
![Page 3: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/3.jpg)
![Page 4: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/4.jpg)
13 datacentres
![Page 5: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/5.jpg)
~18 million droplets
![Page 6: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/6.jpg)
a grown-up infrastructure
company
![Page 7: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/7.jpg)
Why am I even here?
![Page 8: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/8.jpg)
Projects take too long
idea $$
![Page 9: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/9.jpg)
Upon closer look
idea $$
![Page 10: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/10.jpg)
Product Engineering
Cloud Engineering
![Page 11: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/11.jpg)
We will be talking about Product Engineering
![Page 12: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/12.jpg)
I am completely biased
![Page 13: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/13.jpg)
"The general tendency is to over-design the second system, using all the ideas and frills that were cautiously sidetracked on the first one."
— Fred Brooks, "The Second-System Effect"
![Page 14: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/14.jpg)
finaglescalamuxservicediscoverybuildpipelinesconsulrabbitmqkubernetesdockerzipkineventsourcingservicesdirectorygolangbffsidecarsthriftcircuitbreakerszookeeperkafkaprometheusjenkinsrundeckcassandrahadoophystrixrxjavastitch
what to prioritise?
![Page 15: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/15.jpg)
Some stuff is just mandatory.
![Page 16: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/16.jpg)
• Rapid provisioning • Basic Monitoring • Rapid application deployment
![Page 17: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/17.jpg)
• Rapid provisioning 😎 • Basic Monitoring💩 • Rapid application deployment 💩
![Page 18: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/18.jpg)
![Page 19: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/19.jpg)
![Page 20: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/20.jpg)
Value-Added Service
Critical Path Service
PCI, ect.
![Page 21: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/21.jpg)
And some other stuff is just taste.
![Page 22: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/22.jpg)
HTTP+JSON
![Page 23: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/23.jpg)
Performance isn’t likely to be your problem using it.
![Page 24: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/24.jpg)
Tolerant Reader leads to lots of duplicated code.
![Page 25: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/25.jpg)
Duplicated code leads to client libraries.
![Page 26: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/26.jpg)
Client libraries lead to release management overhead.
![Page 27: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/27.jpg)
Client libraries lead to hidden business logic.
![Page 28: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/28.jpg)
Client Libraries need to be efficient, lean, robust.
![Page 29: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/29.jpg)
They don’t need to be written manually.
![Page 30: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/30.jpg)
Something I’m sure you’ll have:
![Page 31: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/31.jpg)
Circular dependencies.
![Page 32: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/32.jpg)
Event Bus
Circles can often be broken by async events
![Page 33: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/33.jpg)
We are event driven by nature
![Page 34: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/34.jpg)
![Page 35: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/35.jpg)
![Page 36: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/36.jpg)
What should be a service?
![Page 37: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/37.jpg)
billing
![Page 38: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/38.jpg)
rating invoicingpayment
-collectingenabled -features
![Page 39: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/39.jpg)
rating invoicingpayment
-collectingenabled -features
Highly visible
Not visible
Novel Commodity
![Page 40: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/40.jpg)
It’s early days, but we can already see progress.
idea $$
![Page 41: Microservices in your Datacentre](https://reader033.vdocuments.net/reader033/viewer/2022051404/587404bc1a28ab6f1d8b5e11/html5/thumbnails/41.jpg)
digitalocean.com
Q&A