on microservices and monoliths

37
on μservices and monoliths Hosted by

Upload: daniel-rolnick

Post on 22-Jan-2018

120 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: On microservices and monoliths

on µservices and monolithsHosted by

Page 2: On microservices and monoliths

Let’s meet our speakers

Barak Shechter - Director of Architecture at Calypso Technology. He has focused

his career in software architecture for big data and cloud applications--specializing

in how to build resilient, fault tolerant distributed systems.

Daniel Rolnick - Chief Technology Officer of ShopKeep. He has been building

SaaS based software for the past 16 years with a focus on decreasing release

cycles for the past 8 years.

John Eckhart - Business Technology Officer at Yodle/Web.com. He primarily

seeks to keep Barak and Daniel on their toes and may have designed some of the

things they will talk about. ;-)

Page 3: On microservices and monoliths

Quick Poll

● How often are your teams releasing software today?

● Does your team:

○ practice continuous integration?

○ have a release train?

○ practice continuous delivery?

● Have you heard of the terms: bulkheading or decoupling?

Page 4: On microservices and monoliths

Are Microservices Good?

● Pros

○ Smaller computational units improve testability

○ Smaller changes are easier to release

○ Fewer dependencies means smaller machines

○ Granular deployable components are independently scalable

● Cons

○ Significant overhead to large scale micro-services organizations

○ Cognitive load for complex service architectures brings challenges

Page 5: On microservices and monoliths

Are Monoliths Bad?

● Pros

○ A well architected Monolith has a lower cognitive load

○ Existing development tools make monoliths easy to deal with

● Cons

○ Monoliths can grow too large to develop locally

○ Complex testing requirements may make it difficult to push out small changes

○ Release trains are more complex

Page 6: On microservices and monoliths

Architectural Paradigms

100 systems surveyed for patterns on decoupling.

Top 5 answers on the board

Hands on your buzzers

It’s time to play: The Feud

Page 7: On microservices and monoliths

Let’s Play The Feud - How do you like to decouple?

Page 8: On microservices and monoliths

Let me see.... Sharding

SHARDING

10

Page 9: On microservices and monoliths

Sharding

Application

DB

Page 10: On microservices and monoliths

Sharding

Some Router

Application

DB

Page 11: On microservices and monoliths

Shard 1

Sharding

Some Router

Application

DB

Page 12: On microservices and monoliths

Shard 1

Sharding

Some Router

Application

DB

Shard 2

Application

DB

Page 13: On microservices and monoliths

Shard 1

Sharding

Some Router

Application

DB

Shard 2

Application

DB

Shared

DB

Page 14: On microservices and monoliths

Back to the Board

SHARDING

10

Page 15: On microservices and monoliths

Let me see.... Messaging

SHARDING

40

MESSAGING

Page 16: On microservices and monoliths

Messaging

Application

Logical

Unit

DB

Page 17: On microservices and monoliths

Messaging

Application

Logical

Unit

DB

Logical

UnitMessage Bus

Page 18: On microservices and monoliths

Messaging

Application

DB

Logical

UnitMessage Bus

Logical

Unit

Page 19: On microservices and monoliths

Messaging

Application

DB

Logical

UnitMessage Bus

Logical

Unit

DB

Page 20: On microservices and monoliths

Two Down. Three to Go.

SHARDING

40

MESSAGING

Page 21: On microservices and monoliths

Let me see.... Streams

SHARDING

50

MESSAGING

STREAMS

Page 22: On microservices and monoliths

Stream Processing

Application

Logical

UnitMessage Bus

DB

Page 23: On microservices and monoliths

Stream Processing

ApplicationMessage Bus

DB

Logical

Unit

Page 24: On microservices and monoliths

Stream Processing

ApplicationMessage Bus

DB

Page 25: On microservices and monoliths

Stream Processing

ApplicationMessage Bus

DB DB

Page 26: On microservices and monoliths

Two answers left on the board

SHARDING

50

MESSAGING

STREAMS

Page 27: On microservices and monoliths

Let me see.... Services

SHARDING

70

MESSAGING

STREAMS

SERVICES

Page 28: On microservices and monoliths

Services

Application

Page 29: On microservices and monoliths

Services

Application

Logical Unit 3 Logical Unit 4

Logical Unit 2Logical Unit 1

Page 30: On microservices and monoliths

Services

Application

Logical Unit 3 Logical Unit 4

Unit 2 Call

RouterLogical Unit 1 Logical Unit 2

Page 31: On microservices and monoliths

Services

Application

Logical Unit 3 Logical Unit 4

Unit 2 Call

RouterLogical Unit 1 Logical Unit 2

Logical Unit 2.1

Page 32: On microservices and monoliths

Services

Application

Logical Unit 3 Logical Unit 4

Unit 2 Call

RouterLogical Unit 1

Logical Unit 2.1

Page 33: On microservices and monoliths

One Answer Remaining

SHARDING

70

MESSAGING

STREAMS

SERVICES

Page 34: On microservices and monoliths

Let me see.... Contracts

SHARDING

100

MESSAGING

STREAMS

SERVICES

CONTRACTS

Page 35: On microservices and monoliths

Contracts

Page 36: On microservices and monoliths

Contracts

Page 37: On microservices and monoliths

Questions