From a monolith to microservices + REST: The evolution of LinkedIn's architecture
What monolith can learn from microservices?
Transcript of What monolith can learn from microservices?
@alexsotob10
Isolation of Code
review
api
impl
detail
api
impl
game
api
impl
publicexposes only what is requiredfavour low-coupling
privatehighly cohesivereduces our memory footprint
IMPL
API
pmd, code-assert, checkstyle, maven enforcer
@alexsotob12
Isolation of Data
game schema
Game
Detaildetail schema
Reviewreview schema
Module == Schema
Joins inside Schema
Referential Integrity across Schemas
Global transactions
flyway, liquibase
@alexsotob20
MicroFrontends
Code to embed
Custom name
https://micro-frontends.org/https://developers.google.com/web/fundamentals/web-components/customelements
@alexsotob22
Your Stack Matters
Server Hardware
Operating System
Application Server
your.war
Java Virtual Machine
Custom Configuration
Linux Kernel Version & Distribution
Java 1.7.0_67
Tomcat, Wildfly, Jetty
JDBC driver, users
@alexsotob30
Release as Unicorns
Build Dockerfile DeployBuild Container Testing in Production Release
s2i, OpenShift, Fabric8 Teiid, Debezium (Test Prod)
@alexsotob32
Advantages of monolith
> Local Calls
> All parts always up
> Easy to debug
> Easy to test
> Refactor without running surprises
> You see the real world every time
> Easy to deploy (coordination)
> Polyglot Languages, DB
@alexsotob33
Digital Darwinism
Self-Service, On-Demand,
Elastic, Infrastructure
as Code
(Cloud)
Re-Org to DevOps
Automation Puppet, Chef,
Ansibleand/or
Kubernetes
CI & CD Deployment
Pipeline
Advanced Deployment Techniques
Microservices
@alexsotob34
https://www.slideshare.net/dbryant_uk/oreilly-sacon-ny-2018-continuous-delivery-patterns-for-contemporary-architecture/2
You In The Near Future
@alexsotob36
Stats serviceUser Service
Awards Service
Question Service
Advertise Service
Question Service