Microservices and the Cloud-Based Future of Integration

45
t Sponsors Charles Young Solidsoft Reply, Principal Consultant Microservices and the Cloud-Based Future of Integration BizTalk Summit 2015 – London ExCeL London | April 13th & 14th

Transcript of Microservices and the Cloud-Based Future of Integration

Page 1: Microservices and the Cloud-Based Future of Integration

tSponsors

Charles YoungSolidsoft Reply, Principal Consultant

Microservices and the Cloud-Based Future

of Integration

BizTalk Summit 2015 – LondonExCeL London | April 13th & 14th

Page 2: Microservices and the Cloud-Based Future of Integration

Charles Young

Principal Consultant

Solidsoft Reply

www.solidsoftreply.com

geekswithblogs.net/cyoung

Specialist Microsoft development consultancy

1993 Microsoft certified application developers

1999 Microsoft managed partner

2000 Microsoft BizTalk integration specialists

2002 Microsoft global advisory council

2010 Windows Azure “cloud first” solutions

2013 Joined Reply

Microsoft® Global Partner Network™

PARTNER OF THE YEAR

2006 Winner Application Integration

2008 Finalist Application Integration

2010 Finalist Custom Development

2011 Winner Application Integration

2012 Finalist Government Solutions

2013 Winner Cloud Solutions

Today

UK “SME” £10M revenue

Core team of 60 specialists

100% Microsoft focus

ISO 9001 & 27001 compliant

UK Government IL3 certified

International Society for Pharmaceutical Engineering GAMP5

who we are

Page 3: Microservices and the Cloud-Based Future of Integration

Agenda

• Understanding Integration

• Integration Trends

• Microservices

• Microservices & PaaS

• Container

• Microservice Integration

Page 4: Microservices and the Cloud-Based Future of Integration

UnderstandingIntegration

Page 5: Microservices and the Cloud-Based Future of Integration

Integration • Adaptation

• Mediation

• Transformation

• Routing

• Orchestration

Enterprise Application Integration

Data Integration

Electronic Data Integration

• Extract, Transform and Load

• Data Warehousing

• Change Data Capture

• Federation

• Master Data Management

• B2B

• EDIFACT/X12

• TRADACOMS

• HL7

• Partner Management

• VANs

Page 6: Microservices and the Cloud-Based Future of Integration

Enterprise Application Integration (EAI)

Web Site Email

Mobile Devices

CMS

CRM

ERP

Channels

Line-of-Business

Back Office

Cloud ServicesTrading Partners

Data

Services

HubAdaptationMediation

Orchestration

Page 7: Microservices and the Cloud-Based Future of Integration

ESB Service Integration

Web Site EmailMobile Devices

CMS CRM ERP

Distributed Services

On-Ramp

Services

Off-Ramp

Services

Adaptation

Mediation

Routing

Bus

Page 8: Microservices and the Cloud-Based Future of Integration

ESB Service Integration

Web Site Email

Mobile Devices

CMS

CRM

ERP

Channels

Line-of-Business

Back Office

Cloud ServicesTrading Partners

Data

Services

Page 9: Microservices and the Cloud-Based Future of Integration

Layered Architecture

Web Site EmailMobile Devices

CMS CRM ERP

Data / Integration

Business Logic(Application Domain)

Presentation

Mediation

Boundary

Page 10: Microservices and the Cloud-Based Future of Integration

Hexagonal Architecture - Alistair Cockburn

Web Site

Mobile Devices

Email

CMS

CRM

ERP

Channels

Line-of-Business

Back Office

Cloud ServicesTrading Partners

Data

Services

Application Domain

Ports &

Adapters

Page 11: Microservices and the Cloud-Based Future of Integration

The Changing Faceof Integration

Page 12: Microservices and the Cloud-Based Future of Integration

Standardising the Interface

RESTover

HTTPServiceClient

GET

HEAD

PUT

POST

PATCH

DELETE

OPTIONS

HATEOAS

Hypermedia

URIResource

Metadata (optional)

Roy Fielding

“Supports software engineering

on the scale of decades”

SOAP+

WDSLServiceClient

Response

Service URL

SOAP Action

SOAP Envelope

Payload

WSDL Metadata

Extensions (WS-*)

Wraps messages in

standardized, extensible

envelope.

Provides strongly-typed

interfaces

Page 13: Microservices and the Cloud-Based Future of Integration

Cloud Services Integration

Page 14: Microservices and the Cloud-Based Future of Integration

Mobile Application Integration

Page 15: Microservices and the Cloud-Based Future of Integration

INTERNET of THINGS

Page 16: Microservices and the Cloud-Based Future of Integration

iPaaS Integration Platform-as-a-Service

On-Premises SystemsHybrid

SaaS

• Connectors• Mediation• Workflow

• Elastic & available• No Capex• Usage-based cost• Browser-based tools

iPaaS

EAI Server / ESB Fidelity

Page 17: Microservices and the Cloud-Based Future of Integration

Aspirations • Simplicity

• Velocity

• Evolution

• Democratisation

• Cost Reduction

SIMPLICITY

Page 18: Microservices and the Cloud-Based Future of Integration

Microservices

Page 19: Microservices and the Cloud-Based Future of Integration

Microservices in Hexagonal Architecture

Web Site

Mobile Devices

Email

CMS

CRM

ERP

Channels

Line-of-Business

Back Office

Cloud ServicesTrading Partners

Data

Services

Application Domain

Ports &

Adapters

Microservices

Page 20: Microservices and the Cloud-Based Future of Integration

Microservice Principles

Monolith Monolith

Monolith

Monolith

Presentation

Data / Integration

Microservices

Avoid centralised governance

and management

Use lightweight communicationDeploy, host and version independentlyOrganise around business capabilitiesDo one thing and do it wellDecompose monoliths into

microservices

MicroserviceMicroservice

REST

No container needed

Page 21: Microservices and the Cloud-Based Future of Integration

Microservices

• Emad Benjamin: http://bit.ly/1BmMuet

… 16 VMs

400 JVMs

Load Balancer

6 VMs

12 JVMs

Page 22: Microservices and the Cloud-Based Future of Integration

Port

BizTalk Server and Microservices

Ports & Adapters

Orchestration

Message Box

Queues & Subscriptions

Mediation Container (e.g., Receive Location)

Adapter

Pipelines

Message AgentBT Transport

Mes

sage

Bo

x

MessagesSchemas

Pipeline Components

Maps

MessageEndpoint

Orchestration Engine

Port

Port

Port

PortMessage

Agent

MessagesSchemas

Pipeline Components

Maps

Page 23: Microservices and the Cloud-Based Future of Integration

Connector

Connector

iPaaS and Microservices

Container

MessagesSchemas

Maps

MediationWorkflow

MessageEndpoint

On-Premises

Connector

Connector

Connector

Page 24: Microservices and the Cloud-Based Future of Integration

Connector

Connector

Azure BizTalk Services - MABS

Bridge (container)

Connector

ConnectorMessagesSchemas

Maps

MediationMessageEndpoint

On-Premises Adapter

Pipelines

Page 25: Microservices and the Cloud-Based Future of Integration

Ecosystem

Connector

Azure App Service and Microservices

MessageEndpoint

Transformer ValidatorConnector

Connector

MediationLogic

Hybrid Connection

Application

Gateway

Logic App (Workflow)

Business Logic

Decoupled

Resource Group(container)

Connector

Page 26: Microservices and the Cloud-Based Future of Integration

Application Gateway

Application Gateway

Runtime• Name resolution

• Isolated Storage

• Shared Config

Proxy• API Logging

• API access level

• Transforming API definition

Identity Broker• AAD & social login

• Identity brokerage

• Secure token store

External Inbound Calls

Calls between microservices

Platform Services

• Discovery

• Logging

• Billing

• Automatic Updates

• Isolated Storage

Authorisation

• Application secrets

(Twitter, Facebook, etc.)

• Azure Active Directory

• App and On Behalf Of

Access

• RBAC rules

Metadata

• Generate client libraries

• Powers Siena and

workflow

Monitoring

• Installed applications

• Number of calls to components

• Network traffic including

endpoints

• Detailed performance data

• Up time & crashes

Proxy

• API’s define public/private endpoints

Component Author

• Crash logs for components

Isolated storage

Shared config

Secure token store

Page 27: Microservices and the Cloud-Based Future of Integration

Containers

Page 28: Microservices and the Cloud-Based Future of Integration

Azure Containers Today

MABSApp Service

Web AppsMobile AppsAPI AppsBizTalk AppsLogic Apps

PaaS Roles

Web RolesWorker Roles

Page 29: Microservices and the Cloud-Based Future of Integration

Windows Server Containers

Windows ProcessWindows Process

Windows Server Container

Windows Process

Hyper-V Container

Windows Process

OS Kernel

Docker Engine

Docker Client

Page 30: Microservices and the Cloud-Based Future of Integration

Bins & LibsBins & LibsBins & Libs

Docker

Kernel

OS

DockerEngine

Bins & Libs Bins & Libs Bins & Libs

DockerContainer

DockerContainer

DockerContainer

DockerContainer

DockerContainer

DockerContainer

DockerContainer

DockerContainer

DockerContainer

DockerContainer

DockerContainer

Docker HubPublic & Private Repos

Local Registry

Base Image

Read Only

Writeable

Bin & Libs

Base

DockerClient

Tools / API

Containership

Base

Page 31: Microservices and the Cloud-Based Future of Integration

Docker and DevOps

Development

Test

Production

Ship

Run

Build

Docker Image Repos

Source Code Repo

Build scripts, frameworks

and tools

Package Management• NuGet

• OneGet

• Chocolatey

Page 32: Microservices and the Cloud-Based Future of Integration

Docker and Platform Independence

On-Premises

Datacentre

Service

Provider

Cloud

Platform

ProviderRun

anywhere

Page 33: Microservices and the Cloud-Based Future of Integration

Evolving PaaS Landscape• Elastic Beanstalk• EC2 Container Service• Lambda

• PaaS ‘V2’• Resource Groups• Docker for WIndows

• Gears

• Slugs• Dynos

Kubernetes Docker SwarmDocker

• App Engine• Container Engine• Cloud Foundry

• Docker Container Service

Page 34: Microservices and the Cloud-Based Future of Integration

Microservice Integration

Page 35: Microservices and the Cloud-Based Future of Integration

Microservice Integration

“5^`V z1NphE56V 1`N 7j&`V 3t$ j

One container to rule them allOn-Premises or

Service Provider

Page 36: Microservices and the Cloud-Based Future of Integration

Microservice Integration

Hybrid Agents

Connectors

AdaptationMediation

On-Premises or

Service Provider

Page 37: Microservices and the Cloud-Based Future of Integration

Microservice Integration

Session Presentation ApplicationTransport

Batch Control Message model Reliable messaging Deduplication Transaction control In-order delivery Message priority Throttling Content streaming and

chunking Buffering

Connectors

Transport protocols Application protocols Message endpoints Metadata and discovery Connections and pooling Timeouts Authentication Push and pull Acknowledgments Fault messages Batch size Metadata harvesting

Message exchange patterns: One-Way Two-Way – Half-duplex

Two-Way – Full-duplex

Certificate management Trust Scheduling Fast Fail Retry Recovery Failed message handling

Encoding & decoding Encryption and decryption Enveloping Framing and disassembly Validation Fixing Filtering Enrichment Transformation Caching Auditing Logging

Persistence Routing Operation Publishing Subscribing Correlation

A

NetworkStack

Application, Service or Data Store

Mediation Framework – Composition, Configuration, Deployment, Hosting, Management, Monitoring, Tracking, DisagnosticsPorts and Adapters

Inherent complexity wont go away

Page 38: Microservices and the Cloud-Based Future of Integration

Mediation microservices

Microservice Integration

On-Premises or

Service Provider

Platform-level mediation microservices

Page 39: Microservices and the Cloud-Based Future of Integration

Microservice Integration

On-Premises or

Service Provider

Fully-decoupled business logic

Page 40: Microservices and the Cloud-Based Future of Integration

Microservice Integration

On-Premises or

Service Provider

Platform-levelservice orchestration

Page 41: Microservices and the Cloud-Based Future of Integration

Microservice Integration

On-Premises or

Service Provider

Route by any means

• Direct• Data stores• Cache• Queues• Topics & subscriptions• Event hubs

Page 42: Microservices and the Cloud-Based Future of Integration

Microservice Integration

On-Premises or

Service Provider

Platform-levelMonitoring & tracking

Page 43: Microservices and the Cloud-Based Future of Integration

Microservice Integration

On-Premises or

Service Provider

Favour Horizontal Scaling

Page 44: Microservices and the Cloud-Based Future of Integration

Microservice Integration

On-Premises or

Service Provider

Technology agnosticism

Page 45: Microservices and the Cloud-Based Future of Integration

Thank You!

Charles Young

Principal Consultant

Solidsoft Reply

www.solidsoftreply.com

geekswithblogs.net/cyoung

Specialist Microsoft development consultancy

1993 Microsoft certified application developers

1999 Microsoft managed partner

2000 Microsoft BizTalk integration specialists

2002 Microsoft global advisory council

2010 Windows Azure “cloud first” solutions

2013 Joined Reply

Microsoft® Global Partner Network™

PARTNER OF THE YEAR

2006 Winner Application Integration

2008 Finalist Application Integration

2010 Finalist Custom Development

2011 Winner Application Integration

2012 Finalist Government Solutions

2013 Winner Cloud Solutions

Today

UK “SME” £10M revenue

Core team of 60 specialists

100% Microsoft focus

ISO 9001 & 27001 compliant

UK Government IL3 certified

International Society for Pharmaceutical Engineering GAMP5

who we are