Upload
phil-calcado
View
554
Download
73
Embed Size (px)
Citation preview
Technical ChallengesOrganiza,on Challenges
Introducing distribu,on into your architecture brings up new
"I know, let’s have all circuit breakers share state”
Answer to the question “how did my application ended up importing a Zookeeper library again?"
Circuit breakersTimeouts
Your code looks like this now
Biz Logic
Timeouts
Telemetry
RPC code
Distributed state
Circuit breakersTimeouts
Your code looks like this now
Biz Logic
Timeouts
Telemetry
RPC code
Distributed state
Client-side Service Discovery
Circuit breakers
Timeouts
Biz Logic
Timeouts
Telemetry
RPC code
Distributed state
Client-side Service Discovery
SDK
Applica,on
Transport
Internet
Network
Circuit breakers
Telemetry
RPC code
Distributed state
Client-side Service Discovery
} TCP/IP
} ?
One way to think about it
Sidecars to the rescue
Circuit breakers
Timeouts
Biz Logic
Timeouts
Telemetry
RPC code
Distributed state
Client-side Service Discovery
SCARY OUTSIDE WORLD
Sidecars to the rescue
Circuit breakers
Timeouts
Biz Logic
Timeouts
Telemetry
RPC code
Distributed state
Client-side Service Discovery
SCARY OUTSIDE WORLDSidecar
Circuit breakers
Timeouts
Biz Logic
Timeouts
Telemetry
RPC code
Distributed state
Client-side Service Discovery
Service
Plaform
New, optmised, protocols are quite opaque (e.g. gRPC and friends)
Works be9er with metadata-rich protocols
It makes it even harder to fully replicate produc,on earlier in the development cycle
Coupled to the plaform