Top Banner
DEPLOYING AND SCALING MICROSERVICES Sam Newman YOW! 2015
194

Deploying and Scaling Microservices

Jan 21, 2017

Download

Software

Sam Newman
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Deploying and Scaling Microservices

DEPLOYING AND SCALING MICROSERVICESSam Newman YOW! 2015

Page 2: Deploying and Scaling Microservices

@samnewman

Page 3: Deploying and Scaling Microservices

@samnewman

Sam Newman

Building MicroservicesDESIGNING FINE-GRAINED SYSTEMS

Page 4: Deploying and Scaling Microservices

@samnewman

Core Principles

Page 5: Deploying and Scaling Microservices

@samnewman

Artifacts

Core Principles

Page 6: Deploying and Scaling Microservices

@samnewman

Artifacts

Core Principles

Platforms

Page 7: Deploying and Scaling Microservices

@samnewman

Artifacts

Core Principles

Platforms

Page 8: Deploying and Scaling Microservices

@samnewman

Accounts

Returns

Invoicing

Shipping

Inventory

Customer Service

Page 9: Deploying and Scaling Microservices

@samnewman

Independent Deployability

Page 10: Deploying and Scaling Microservices

@samnewman

Accounts

Returns v345

Invoicing

Inventory

Customer Service

Shipping v123

Page 11: Deploying and Scaling Microservices

@samnewman

AccountsInvoicing

Shipping v456

Inventory

Customer Service

Returns v890

Page 12: Deploying and Scaling Microservices

@samnewman

https://www.flickr.com/photos/torkildr/3462607995/

Page 13: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Page 14: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

Page 15: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

Page 16: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

Page 17: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

!

Page 18: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

! !

Page 19: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

! ! !

Page 20: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

! ! !

Page 21: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

! ! !

One Artifact For All Environments

Page 22: Deploying and Scaling Microservices

@samnewman

TestsBuild Performance ProdUAT

https://www.flickr.com/

Source Control

! ! !

One Artifact For All Environments

Same Deployment Process Everywhere

Page 23: Deploying and Scaling Microservices

@samnewman

$ deploy Returns v456 Production

Page 24: Deploying and Scaling Microservices

@samnewman

$ deploy Returns v456 Production

Service Name

Page 25: Deploying and Scaling Microservices

@samnewman

$ deploy Returns v456 Production

Service Name Version

Page 26: Deploying and Scaling Microservices

@samnewman

$ deploy Returns v456 Production

local

Service Name Version

Page 27: Deploying and Scaling Microservices

@samnewman

$ deploy Returns v456 Production

locallatest

Service Name Version

Page 28: Deploying and Scaling Microservices

@samnewman

$ deploy Returns v456 Production

locallatest

Service Name Version

Environment

Page 29: Deploying and Scaling Microservices

@samnewman

TestsBuild Large TestsUAT Prod

DB

Machine

UAT Environment

Machine

Perf

Page 30: Deploying and Scaling Microservices

@samnewman

TestsBuild UAT Perf

Master DB

Machine

Perf Environment

Machine Machine Machine

Slave DB

Perf Prod

Page 31: Deploying and Scaling Microservices

@samnewman

TestsBuild UAT Perf Prod

Master DB

Machine

Production Environment

Machine Machine Machine

Slave DB

Page 32: Deploying and Scaling Microservices

@samnewman

Same Artifact

Page 33: Deploying and Scaling Microservices

@samnewman

Same Artifact

Different Topology

Page 34: Deploying and Scaling Microservices

@samnewman

Core Principles?

Page 35: Deploying and Scaling Microservices

@samnewman

Independent Deployability

Core Principles?

Page 36: Deploying and Scaling Microservices

@samnewman

Independent Deployability

One Artifact For All Environments

Core Principles?

Page 37: Deploying and Scaling Microservices

@samnewman

Independent Deployability

One Artifact For All Environments

Same Deployment Process Everywhere

Core Principles?

Page 38: Deploying and Scaling Microservices

@samnewman

Artifacts

Core Principles

Platforms

Page 39: Deploying and Scaling Microservices

@samnewman

What do we want from an artifact?

Page 40: Deploying and Scaling Microservices

@samnewman

What do we want from an artifact?

Page 41: Deploying and Scaling Microservices

@samnewman

What do we want from an artifact?

Easy to create

Page 42: Deploying and Scaling Microservices

@samnewman

What do we want from an artifact?

Easy to deploy

Easy to create

Page 43: Deploying and Scaling Microservices

@samnewman

What do we want from an artifact?

Easy to deploy

Abstract out the tech stack

Easy to create

Page 44: Deploying and Scaling Microservices

@samnewman

What do we want from an artifact?

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Easy to create

Page 45: Deploying and Scaling Microservices

@samnewman

Tarballs

Page 46: Deploying and Scaling Microservices

@samnewman

Tarballs

Giant bundles of stuff

Page 47: Deploying and Scaling Microservices

@samnewman

Tarballs

Easy to create

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Page 48: Deploying and Scaling Microservices

@samnewman

Tarballs

Easy to create!

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Page 49: Deploying and Scaling Microservices

@samnewman

Tarballs

Easy to create!

Easy to deploy"

Abstract out the tech stack

Good for dev, good for ops

Page 50: Deploying and Scaling Microservices

@samnewman

Tarballs

Easy to create!

Easy to deploy"

Abstract out the tech stack#

Good for dev, good for ops

Page 51: Deploying and Scaling Microservices

@samnewman

Tarballs

Easy to create!

Easy to deploy"

Abstract out the tech stack#

Good for dev, good for ops"

Page 52: Deploying and Scaling Microservices

@samnewman

Stack-specific

Page 53: Deploying and Scaling Microservices

@samnewman

Stack-specific

nuget

jar

pip

gems

Page 54: Deploying and Scaling Microservices

@samnewman

Stack-specific

Easy to create

Abstract out the tech stack

Easy to deploy

Good for dev, good for ops

Page 55: Deploying and Scaling Microservices

@samnewman

Stack-specific

Easy to create!

Abstract out the tech stack

Easy to deploy

Good for dev, good for ops

Page 56: Deploying and Scaling Microservices

@samnewman

Stack-specific

Easy to create!

Abstract out the tech stack

Easy to deploy#

Good for dev, good for ops

Page 57: Deploying and Scaling Microservices

@samnewman

Stack-specific

Easy to create!

Abstract out the tech stack"

Easy to deploy#

Good for dev, good for ops

Page 58: Deploying and Scaling Microservices

@samnewman

Stack-specific

Easy to create!

Abstract out the tech stack"

Easy to deploy#

Good for dev, good for ops"

Page 59: Deploying and Scaling Microservices

@samnewman

Everything in Go is Awesome

Page 60: Deploying and Scaling Microservices

@samnewman

Everything in Go is Awesome

FACT

Page 61: Deploying and Scaling Microservices

@samnewman

OS-Specific

Page 62: Deploying and Scaling Microservices

@samnewman

OS-Specific

$ sudo apt-get install myservice

Page 63: Deploying and Scaling Microservices

@samnewman

OS-Specific

$ sudo apt-get install myservice

$ deploy Returns v456 Production

Page 64: Deploying and Scaling Microservices

@samnewman

OS-Specific

Easy to deploy

Easy to create

Abstract out the tech stack

Good for dev, good for ops

Page 65: Deploying and Scaling Microservices

@samnewman

OS-Specific

Easy to deploy

Easy to create"

Abstract out the tech stack

Good for dev, good for ops

Page 66: Deploying and Scaling Microservices

@samnewman

OS-Specific

Easy to deploy!

Easy to create"

Abstract out the tech stack

Good for dev, good for ops

Page 67: Deploying and Scaling Microservices

@samnewman

OS-Specific

Easy to deploy!

Easy to create"

Abstract out the tech stack!

Good for dev, good for ops

Page 68: Deploying and Scaling Microservices

@samnewman

OS-Specific

Easy to deploy!

Easy to create"

Abstract out the tech stack!

Good for dev, good for ops#

Page 69: Deploying and Scaling Microservices

@samnewman

Build

Page 70: Deploying and Scaling Microservices

@samnewman

Build

Deb Repo

Page 71: Deploying and Scaling Microservices

@samnewman

Host

Build

Deb Repo

Page 72: Deploying and Scaling Microservices

@samnewman

Host

Build

Deb Repo

Page 73: Deploying and Scaling Microservices

@samnewman

Host

Build

Deb Repo

Page 74: Deploying and Scaling Microservices

@samnewman

Page 75: Deploying and Scaling Microservices

@samnewman

A v1.5

Page 76: Deploying and Scaling Microservices

@samnewman

A v2.1

A v1.5

Page 77: Deploying and Scaling Microservices

@samnewman

A v2.1

A v1.5

Page 78: Deploying and Scaling Microservices

@samnewman

Host

Page 79: Deploying and Scaling Microservices

@samnewman

Host

Page 80: Deploying and Scaling Microservices

@samnewman

Host Host

Host Host

Page 81: Deploying and Scaling Microservices

@samnewman

Host Host

Host Host

Independent Execution Environments FTW!

Page 82: Deploying and Scaling Microservices

@samnewman

Custom Images

Easy to deploy

Easy to create

Abstract out the tech stack

Good for dev, good for ops

Page 83: Deploying and Scaling Microservices

@samnewman

Custom Images

Easy to deploy

Easy to create#

Abstract out the tech stack

Good for dev, good for ops

Page 84: Deploying and Scaling Microservices

@samnewman

Custom Images

Easy to deploy#

Easy to create#

Abstract out the tech stack

Good for dev, good for ops

Page 85: Deploying and Scaling Microservices

@samnewman

Custom Images

Easy to deploy#

Easy to create#

Abstract out the tech stack

Good for dev, good for ops

!

Page 86: Deploying and Scaling Microservices

@samnewman

Custom Images

Easy to deploy#

Easy to create#

Abstract out the tech stack

Good for dev, good for ops

!

#

Page 87: Deploying and Scaling Microservices

@samnewman

Page 88: Deploying and Scaling Microservices

@samnewman

Page 89: Deploying and Scaling Microservices

@samnewman

Cost of isolated hosts is reduced…

Page 90: Deploying and Scaling Microservices

@samnewman

Cost of isolated hosts is reduced…

…in terms of effort…

Page 91: Deploying and Scaling Microservices

@samnewman

Cost of isolated hosts is reduced…

…in terms of effort…

…and computing resources

Page 92: Deploying and Scaling Microservices

@samnewman

Docker!

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Easy to create

Page 93: Deploying and Scaling Microservices

@samnewman

Docker!

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Easy to create#

Page 94: Deploying and Scaling Microservices

@samnewman

Docker!

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Easy to create

!

#

Page 95: Deploying and Scaling Microservices

@samnewman

Docker!

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Easy to create

!

!

#

Page 96: Deploying and Scaling Microservices

@samnewman

Docker!

Easy to deploy

Abstract out the tech stack

Good for dev, good for ops

Easy to create

!

!

#

#

Page 97: Deploying and Scaling Microservices

@samnewman

Artifacts

Core Principles

Platforms

Page 98: Deploying and Scaling Microservices

@samnewman

What do we want from our deployment platform?

Page 99: Deploying and Scaling Microservices

@samnewman

What do we want from our deployment platform?

Separate artifact from topology

Page 100: Deploying and Scaling Microservices

@samnewman

What do we want from our deployment platform?

Separate artifact from topology

Makes handling lots of services easy!

Page 101: Deploying and Scaling Microservices

@samnewman

What do we want from our deployment platform?

Separate artifact from topology

Makes handling lots of services easy!

Supports docker images

Page 102: Deploying and Scaling Microservices

@samnewman

Deployment Platforms?

Page 103: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 104: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 105: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 106: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 107: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Page 108: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Swarm Manager

Page 109: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Swarm Node Swarm Node Swarm Node

Swarm Manager

Page 110: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Swarm Node Swarm Node Swarm Node

Swarm Manager

Page 111: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Swarm Node Swarm Node Swarm Node

Swarm Manager

$ docker …

Page 112: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Swarm Node Swarm Node Swarm Node

Swarm Manager

$ docker …

Page 113: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Swarm Node Swarm Node Swarm Node

Swarm Manager

$ docker …

Page 114: Deploying and Scaling Microservices

@samnewman

DOCKER SWARM

Swarm Node Swarm Node Swarm Node

Swarm Manager

$ docker …

Page 115: Deploying and Scaling Microservices

@samnewman

SCHEDULING STRATEGIES - BINPACK

Swarm Node Swarm Node Swarm Node

Swarm Manager

Page 116: Deploying and Scaling Microservices

@samnewman

SCHEDULING STRATEGIES - BINPACK

Swarm Node Swarm Node Swarm Node

Swarm Manager

Page 117: Deploying and Scaling Microservices

@samnewman

SCHEDULING STRATEGIES - SPREAD

Swarm Node Swarm Node Swarm Node

Swarm Manager

Page 118: Deploying and Scaling Microservices

@samnewman

SCHEDULING STRATEGIES - SPREAD

Swarm Node Swarm Node Swarm Node

Swarm Manager

Page 119: Deploying and Scaling Microservices

@samnewman

DOCKER COMPOSE

web: build: . ports: - "5000:5000" volumes: - .:/code links: - redis

redis: image: redis

Page 120: Deploying and Scaling Microservices

@samnewman

Page 121: Deploying and Scaling Microservices

@samnewman

Doesn’t rebalance

Page 122: Deploying and Scaling Microservices

@samnewman

Doesn’t rebalance

Doesn’t restart failed containers

Page 123: Deploying and Scaling Microservices

@samnewman

Doesn’t rebalance

Doesn’t restart failed containers

Plays nice with the rest of docker

Page 124: Deploying and Scaling Microservices

@samnewman

Doesn’t rebalance

Doesn’t restart failed containers

Plays nice with the rest of docker

Case studies thin on the ground

Page 125: Deploying and Scaling Microservices

@samnewman

Page 126: Deploying and Scaling Microservices

@samnewman

Mesos Master

MESOS

Page 127: Deploying and Scaling Microservices

@samnewman

Mesos Master

MESOS

Page 128: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Page 129: Deploying and Scaling Microservices

@samnewman

Frameworks!

Page 130: Deploying and Scaling Microservices

@samnewman

Page 131: Deploying and Scaling Microservices

@samnewman

Frameworks

Page 132: Deploying and Scaling Microservices

@samnewman

Frameworks

Scheduler

Page 133: Deploying and Scaling Microservices

@samnewman

Frameworks

Scheduler Executor

Page 134: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Page 135: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOSHadoop Scheduler

Page 136: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Hadoop Executor

Hadoop Scheduler

Page 137: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Hadoop Executor

Hadoop Scheduler

Page 138: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Hadoop Executor

Hadoop Scheduler

Hadoop

Page 139: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Hadoop Executor

Hadoop Scheduler

Hadoop

Marathon

Marathon

Page 140: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Hadoop Executor

Hadoop Scheduler

Hadoop

Marathon

Marathon

Marathon Scheduler

Page 141: Deploying and Scaling Microservices

@samnewman

Mesos Master

Mesos Agent Mesos Agent Mesos Agent

MESOS

Hadoop Executor

Hadoop Scheduler

Hadoop

Marathon

Marathon

Marathon Scheduler

Page 142: Deploying and Scaling Microservices

@samnewman

OTHER FRAMEWORKS…

https://github.com/alde/eremetic

Page 143: Deploying and Scaling Microservices

@samnewman

AWS Lambda

Page 144: Deploying and Scaling Microservices

@samnewman

Page 145: Deploying and Scaling Microservices

@samnewman

Great if you need to run other workloads

Page 146: Deploying and Scaling Microservices

@samnewman

Great if you need to run other workloads

Really powerful - fully featured, widely used

Page 147: Deploying and Scaling Microservices

@samnewman

Great if you need to run other workloads

Really powerful - fully featured, widely used

Fairly complex - lots of moving parts

Page 148: Deploying and Scaling Microservices

@samnewman

Page 149: Deploying and Scaling Microservices

@samnewman

Page 150: Deploying and Scaling Microservices

@samnewman

KUBERNETES ARCHITECTURE…SORT OF

Page 151: Deploying and Scaling Microservices

@samnewman

API Server

KUBERNETES ARCHITECTURE…SORT OF

Page 152: Deploying and Scaling Microservices

@samnewman

API Server

KUBERNETES ARCHITECTURE…SORT OF

Page 153: Deploying and Scaling Microservices

@samnewman

API Server

Kubelet Kubelet Kubelet

KUBERNETES ARCHITECTURE…SORT OF

Page 154: Deploying and Scaling Microservices

@samnewman

API Server

Kubelet Kubelet Kubelet

$ kubectl …

KUBERNETES ARCHITECTURE…SORT OF

Page 155: Deploying and Scaling Microservices

@samnewman

API Server

Kubelet Kubelet Kubelet

$ kubectl …

KUBERNETES ARCHITECTURE…SORT OF

Page 156: Deploying and Scaling Microservices

@samnewman

PODS?

Page 157: Deploying and Scaling Microservices

@samnewman

A collection of tightly coupled containers, running on one node

PODS?

Page 158: Deploying and Scaling Microservices

@samnewman

A collection of tightly coupled containers, running on one node

PODS?

Can have metadata, volumes too

Page 159: Deploying and Scaling Microservices

@samnewman

A collection of tightly coupled containers, running on one node

PODS?

Can have metadata, volumes too

Pods are mortal - not long running!

Page 160: Deploying and Scaling Microservices

@samnewman

A collection of tightly coupled containers, running on one node

PODS?

Can have metadata, volumes too

Pods are mortal - not long running!

A pod = a unit of scheduling

Page 161: Deploying and Scaling Microservices

@samnewman

SERVICES!

Page 162: Deploying and Scaling Microservices

@samnewman

SERVICES!

{ "kind": "Service", "apiVersion": "v1", "metadata": { "name": "my-service" }, "spec": { "selector": { "app": "MyApp" }, "ports": [ { "protocol": "TCP", "port": 80, "targetPort": 9376 } ] } }

Page 163: Deploying and Scaling Microservices

@samnewman

SERVICES!

A mapping of metadata and ports

to a set of pods

{ "kind": "Service", "apiVersion": "v1", "metadata": { "name": "my-service" }, "spec": { "selector": { "app": "MyApp" }, "ports": [ { "protocol": "TCP", "port": 80, "targetPort": 9376 } ] } }

Page 164: Deploying and Scaling Microservices

@samnewman

JSON is neither human readable nor human writeable

Page 165: Deploying and Scaling Microservices

@samnewman

JSON is neither human readable nor human writeable

Please stop using it for anything other than machines

Page 166: Deploying and Scaling Microservices

@samnewman

Kubelet

Page 167: Deploying and Scaling Microservices

@samnewman

Kubelet

Page 168: Deploying and Scaling Microservices

@samnewman

Kubelet

Page 169: Deploying and Scaling Microservices

@samnewman

Kubelet

Service Proxy

Page 170: Deploying and Scaling Microservices

@samnewman

Kubelet

Service Proxy

:80

Page 171: Deploying and Scaling Microservices

@samnewman

You don’t scale a service…

Kubelet

Service Proxy

:80

Page 172: Deploying and Scaling Microservices

@samnewman

You don’t scale a service…

…you scale the pods!

Kubelet

Service Proxy

:80

Page 173: Deploying and Scaling Microservices

@samnewman

Page 174: Deploying and Scaling Microservices

@samnewman

Simpler to setup than Mesos - but more single purpose too

Page 175: Deploying and Scaling Microservices

@samnewman

Simpler to setup than Mesos - but more single purpose too

Closer to a PAAS

Page 176: Deploying and Scaling Microservices

@samnewman

Simpler to setup than Mesos - but more single purpose too

Closer to a PAAS

Pods can be confusing!

Page 177: Deploying and Scaling Microservices

@samnewman

Simpler to setup than Mesos - but more single purpose too

Closer to a PAAS

Fairly new, but a growing amount of impressive support

Pods can be confusing!

Page 178: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 179: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 180: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 181: Deploying and Scaling Microservices

@samnewman

Docker Swarm

Page 182: Deploying and Scaling Microservices

@samnewman

Page 183: Deploying and Scaling Microservices

@samnewman

Core Principles

Page 184: Deploying and Scaling Microservices

@samnewman

Core Principles

Independent Deployability

Page 185: Deploying and Scaling Microservices

@samnewman

Core Principles

One Artifact For All Environments

Independent Deployability

Page 186: Deploying and Scaling Microservices

@samnewman

Core Principles

One Artifact For All Environments

Independent Deployability

Same Deployment

Process

Page 187: Deploying and Scaling Microservices

@samnewman

Core Principles

One Artifact For All Environments

Independent Deployability

Same Deployment

Process

Docker Images As Artifacts

Page 188: Deploying and Scaling Microservices

@samnewman

Core Principles

One Artifact For All Environments

Independent Deployability

Same Deployment

Process

Docker Images As Artifacts

Criteria For Selecting A Platform

Page 189: Deploying and Scaling Microservices

@samnewman

Page 190: Deploying and Scaling Microservices

@samnewman

Sam Newman

Building MicroservicesDESIGNING FINE-GRAINED SYSTEMS

AUTHD

Page 191: Deploying and Scaling Microservices

@samnewman

Sam Newman

Building MicroservicesDESIGNING FINE-GRAINED SYSTEMS

AUTHD

Send me your questions on twitter!

Page 192: Deploying and Scaling Microservices

@samnewman

Sam Newman

Building MicroservicesDESIGNING FINE-GRAINED SYSTEMS

AUTHD

Send me your questions on twitter!

@samnewman

Page 193: Deploying and Scaling Microservices

@samnewman

Sam Newman

Building MicroservicesDESIGNING FINE-GRAINED SYSTEMS

AUTHD

Send me your questions on twitter!

@samnewman

And I’ll write up an answer for you!

Page 194: Deploying and Scaling Microservices

@samnewman [email protected]

THANKS!