thirty months of microservices. stairway to heaven or highway to hell? - sander hoogendoorn -...

88
@aahoogendoorn | www.ditisagile.nl Thirty months of microservices. Stairway to heaven or highway to hell? 1 @aahoogendoorn | www.ditisagile.nl Thirty months of microservices Sander Hoogendoorn ditisagile.nl

Upload: codemotion

Post on 16-Apr-2017

160 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 1

@aahoogendoorn | www.ditisagile.nl

Thirty months of microservices

Sander Hoogendoornditisagile.nl

Page 2: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 2

Sander Hoogendoorn

MeDad, software architect, agile coach, programmer, trainer, speaker, writerBooks, articles, conferences, courses

WorkOwner ditisagile.nlFormer CTO insurance companyFormer global agile thoughtleader Capgemini

Webwww.sanderhoogendoorn.comaahoogendoornaahoogendoorn [email protected]

Page 3: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 3

Page 4: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 4

As a project managerI would like to demo untested code so I embarrass myself

Page 5: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 5

@aahoogendoorn | www.ditisagile.nl

Monoliths Hard to deliver, even harder to test and impossible to maintain

Page 6: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 8

Page 7: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 9

Page 8: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 10

Page 9: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 11

Dependencies will kill youA typical systems landscape

Page 10: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 12

@aahoogendoorn | www.ditisagile.nl

A brief history of components and services

Page 11: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 13

Client server

Page 12: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 14

Component based development

Page 13: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 15

Service oriented architecture

Page 14: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 16

Microservices

Page 15: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 17

Page 16: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 18

@aahoogendoorn | www.ditisagile.nl

MicroservicesBeyond the hype?

Page 17: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 19

MicroservicesBeyond the hype?

Page 18: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 20

Gartner hype cycle

Page 19: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 21

@aahoogendoorn | www.ditisagile.nl

MicroservicesThe clear benefits

Page 20: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 22

But first … a definition

Page 21: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 23

In short, the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API.

These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.

Martin Fowler

Page 22: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 24

In short, the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API.

These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized managementof these services, which may be written in different programming languages and use different data storage technologies.

Martin Fowler

Page 23: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 25

In short, the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API.

These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.

Martin Fowler

Page 24: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 34

Opinions, opinions, opinions

Page 25: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 35

Oh and by the way…Doing microservices means that you are building a distributed system

Page 26: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 36

First law of distributed objectsDo not distribute your objects!

Martin Fowler

Page 27: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 37

@aahoogendoorn | www.ditisagile.nl

Are microservicesa stairway to heaven?

Page 28: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 38

@aahoogendoorn | www.ditisagile.nl

Or are they a highway to hell?

Page 29: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 39

@aahoogendoorn | www.ditisagile.nl

From the trenchesMicroservices in real life

Page 30: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 40

Where do we come from?

Page 31: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 41

Where do we come from?

Page 32: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 42

Where do we come from?

Page 33: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 43

Outsourcing didn’t work

Page 34: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 44

Where are we going to?

Page 35: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 48

Page 36: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 49

For the things we have to learn before we can do them, we learn by doing them

Aristotle

Page 37: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 51

@aahoogendoorn | www.ditisagile.nl

So what did we learn?

Page 38: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 52

Microservices require an evolutionary software architecture

Page 39: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 53

@aahoogendoorn | www.ditisagile.nl

Start with some guiding principles

Page 40: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 54

@aahoogendoorn | www.ditisagile.nl

Business processes first

Page 41: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 57

Client thinks in business processes, so we implement business processesWe move away from the mainframe, to a new systems landscape, consisting of micro-applications and micro-componentsRequirements and documentation are modeled rather than writtenApplications implement a single elementary business processApplications and components all have their own bounded contextApplications do not have storage, and only talk to other applications and componentsComponents have their own storage (database), and only talk to other componentsCommunication between applications and components uses a simple open protocol – JSON on REST Avoid transactions as much as possible

Some guiding principles

Page 42: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 60

Page 43: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 61

Page 44: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 69

@aahoogendoorn | www.ditisagile.nl

Designing microservicesModular design and bounded contexts

Page 45: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 70

Doing big up-front design is dumb, doing no design up-front is even dumber

Dave Thomas

Page 46: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 73

Single responsibility principleGroup together things that change togetherSeparate things that change for different reason

Page 47: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 75

Bounded contextWhen you model larger domains, it becomes progressively harder to create this single unified model. Instead of creating a single unified model, you create several, all valid within their bounded context

Page 48: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 76

The single unified domain modelOr more often the humongous data model

Page 49: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 77

Bounded contexts

Page 50: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 78

Page 51: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 83

@aahoogendoorn | www.ditisagile.nl

RESTfulnessis not as easy as it seems

Page 52: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 84

Some examples

Getlocalhost:8080/countries

Getlocalhost:8080/countries/42

localhost:8080/countries/GRC

localhost:8080/countries/isocode/GRC

localhost:8080/countries?isocode=“GRC”

Post or put? localhost:8080/countries

localhost:8080/countries/38

Page 53: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 90

HTTP return codes cheat sheet

1**. Hold on 2**. Here you go

3**. Go away 4**. You fucked up

5**. I fucked up

Page 54: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 91

Be conservative in what you send, be liberal in what you accept

Postel’s Law

Page 55: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 93

@aahoogendoorn | www.ditisagile.nl

Testing microservicesFailing fast

Page 56: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 94

Fail fast, fail often, fail forward

Page 57: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 95

A (typical) service development lifecycle

Page 58: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 96

What to test?

Page 59: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 97

Even though you might have really brilliant testers…

Page 60: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 99

User acceptance testingMinimize to the max

ZZZZZ

Page 61: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 102

@aahoogendoorn | www.ditisagile.nl

Deploying microservicesContinuous integrationand build pipelines

Page 62: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 104

A typical build pipelineIn different (virtual) environments

Page 63: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 105

Build pipelines in Jenkins

Page 64: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 106

Microservices Building multiple deployment pipelines

CodeDeveloper

TestTest

Acceptance Test

Acceptance Live

CodeDeveloper

TestTest

Acceptance Test

Acceptance Live

CodeDeveloper

TestTest

Acceptance Test

Acceptance Live

CodeDeveloper

TestTest

Acceptance Test

Acceptance Live

Page 65: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 107

No one tool to rule them allWe tried Jenkins, Bamboo, Team City, GoCD and then Jenkins again…

Page 66: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 108

@aahoogendoorn | www.ditisagile.nl

Some tooling we useIntelliJSonarQubeJenkinsGit & GitlabInfrastructure as code

Page 67: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 109

Page 68: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 110

Page 69: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 111

Page 70: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 112

Page 71: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 113

Page 72: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 117

Page 73: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 118

Page 74: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 119

Page 75: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 120

Page 76: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 122

Page 77: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 123

DevOps is not easyIt feels like showing up at the wrong re-enactment

Page 78: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 124

Infrastructure as code (often Groovy)And guess what … we know how to do that

Page 79: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 125

Page 80: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 126

Page 81: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 127

Page 82: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 140

@aahoogendoorn | www.ditisagile.nl

In retrospectiveSome final thoughts

Page 83: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 141

Microservices are not for everyone (yet)How do we benefit from implementing microservices?

What are we going to benefit from the most?Polyglot

persistence?

Scalability?

SmallIncrements?

Enforcemodular design?

Delivering more often?

Bounded Contexts?

Page 84: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 142

Will it work?

Page 85: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 143

The hockey stick model

Page 86: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 146

@aahoogendoorn | www.ditisagile.nl

Allow your teams to learn continuously…

Page 87: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlDesigning, developing, testing and deploying microservices 147

@aahoogendoorn | www.ditisagile.nl

And never forgetto have fun

Page 88: Thirty months of microservices. Stairway to heaven or highway to hell? - Sander Hoogendoorn - Codemotion Milan 2016

@aahoogendoorn | www.ditisagile.nlThirty months of microservices. Stairway to heaven or highway to hell? 161

@aahoogendoorn | www.ditisagile.nl

References and questions

www.sanderhoogendoorn.com

www.ditisagile.nl

aahoogendoorn

aahoogendoorn

[email protected]