+ All Categories
Home > Documents > Monolith to Microservices - A Best Practices Approach€¦ · Micro-Service Micro-Service...

Monolith to Microservices - A Best Practices Approach€¦ · Micro-Service Micro-Service...

Date post: 21-Apr-2020
Category:
Upload: others
View: 18 times
Download: 0 times
Share this document with a friend
28
MENDIX WORLD Monolith to Microservices: A Best Practices Approach Jasper van der Hoek / Enterprise Architect
Transcript

MENDIXWORLD

Monolith to Microservices: A Best Practices Approach

Jasper van der Hoek / Enterprise Architect

MENDIXWORLD

Architecture Trends

MENDIXWORLD

Architecture Trends

Internal Modular DesignTraditional Large System

MonolithSystem

ProcessDatabase

LogicGUI

MENDIXWORLD

Architecture Trends

Layered Re-Used ComponentsSOA “System”

Process Layer

Logic Layer

UI Layer

Data Layer

ESB

database Back-endsystems

MENDIXWORLD

Recent Architecture Trends

Independent Specific ComponentsMicroservices System

Time p. Feature

App Size

Micro-Service

Micro-Service

Micro-Service

Micro-Service

MENDIXWORLD

Recent Architecture Trends

Independent Specific Components

Microservices SystemLayered Re-Used Components

SOA “System”Internal Modular Design

Traditional Large System

Micro-Service

Micro-Service

Micro-Service

Micro-Service

MonolithSystem

ProcessDatabase

LogicGUI

Process Layer

Logic Layer

UI Layer

Data Layer

ESB

database Back-endsystems

MENDIXWORLD

Recent Architecture Trends

Independent Specific Components

Microservices SystemLayered Re-Used Components

SOA “System”

Time p. Feature

App Size

Internal Modular Design

Traditional Large System

Time p. Feature

App Size

Micro-Service

Micro-Service

Micro-Service

Micro-Service

Time p. Feature

App Size

MonolithSystem

ProcessDatabase

LogicGUI

Process Layer

Logic Layer

UI Layer

Data Layer

ESB

databaseBack-endsystems

MENDIXWORLD

Microservices Search Trends

2012

H1

2012

H2

2013

H1

2013

H2

2014

H1

2014

H2

2015

H1

2015

H2

2016

H1

2016

H2

2017

H1

2017

H2

2018

H1

2018

H2

2019

H1

MENDIXWORLD

2012

H1

2012

H2

2013

H1

2013

H2

2014

H1

2014

H2

2015

H1

2015

H2

2016

H1

2016

H2

2017

H1

2017

H2

2018

H1

2018

H2

2019

H1

Microservices Search Trends vs SOA

SOA

Microservices

MENDIXWORLD

Why Microservices?

(Long-term) Architectural Flexibility

Increase speed of development

Improve scalability

Improve Quality

Independent Release Management

MENDIXWORLD

How?

Maximize re-use Scale individual services

Reduce dependencies Reduce regression testing

Use single database Standardize technology

MENDIXWORLD

Re-use

Maximize re-use

Use single database

Standardize technology

MENDIXWORLD

Re-use versus Efficiency

Maximize re-use

Use single database

Standardize technology

Autonomous Functional Services

Best Technology for the Job

Services own their data

VS

MENDIXWORLD

MENDIXWORLD

How to choose the right Microservices

MENDIXWORLD

Choosing the Right Microservices

(Long-term) Architectural Flexibility

Increase speed of development

Improve scalability

Improve Quality

Independent Release Management

MENDIXWORLD

Choosing the Right Microservices

• Identify unique business domains by leveraging the ‘Bounded context’

• Design for clear separation in data and ownership

Product Product

Category

Product

Box

Inventory

Product Context

Inventory Context

Shipping Context

MENDIXWORLD

Organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations.

- M. Conway

MENDIXWORLD

Business Processes

IT Solutions(Microservices)

IT

Aligning Organization and Systems

MENDIXWORLD

Business

IT Solutions (Microservices)Business Processes

IT

Aligning Business with IT

MENDIXWORLD

Aligning Business with IT… and technology

Business

IT

Business Processes

IT Solutions(Microservices)

MENDIXWORLDIT

Business Processes

IT Solutions(Microservices)

Aligning Business with IT… and technology

MENDIXWORLD

Breaking down the Monolith A value driven approach

MENDIXWORLD

Choosing the Right Microservices

Level 1

Level 2

Level 3 Business Line

Department

Business Line

Business LineBusiness Line

Department

Business Line

Company Mission

Differentiator Differentiator DifferentiatorDifferentiatorDifferentiator Differentiator

Value Driver

Value Driver

Value Driver

Value Driver

Value Driver

ProcessProcess

Business Line

Process

MENDIXWORLD

Choosing the Right Microservices

(Long-term) Architectural Flexibility

Increase speed of development

Improve scalability

Improve Quality

Independent Release Management

MENDIXWORLD

Choosing the Right Microservices

Level 1

Level 2

Level 3 Business Line

Department

Business Line

Business LineBusiness Line

Department

Business Line

Company Mission

Differentiator Differentiator DifferentiatorDifferentiatorDifferentiator Differentiator

Value Driver

Value Driver

Value Driver

Value Driver

Value Driver

Solution SolutionMicroservice Microservice

Microservice

Solution

Microservice

Microservice

Microservice

DevOps TeamDevOps TeamDevOps Team DevOps Team

Level 4

MENDIXWORLD

Validate Your Microservices

Service Lifecycle & Responsibility• Start of the service lifecycle• End of the service lifecycle

Business Events (incoming/outgoing)• Describe the events in a single sentence

Process description• Identification of major processes (non-

exhaustive)

Stakeholders• Roles of users of the service

MENDIXWORLD

Thank you!

Mendix Makes Microservices easierCheckout these track tomorrow:

Wed — 2:15 pm The aha! Moment: How eXp Realty reached the decision to build a microservices architecture

Wed — 3:15 pm Microservices: What, Why, When and How

Wed — 4:15 pmOData! Bringing structure and syntax to accessing your data

To learn more, connect with Expert Services and ask them about our approach to Microservices.


Recommended