Microservices and the Cloud-Based Future of Integration

Post on 20-Jul-2015

365 views 2 download

Tags:

Transcript of 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

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

Agenda

• Understanding Integration

• Integration Trends

• Microservices

• Microservices & PaaS

• Container

• Microservice Integration

UnderstandingIntegration

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

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

ESB Service Integration

Web Site EmailMobile Devices

CMS CRM ERP

Distributed Services

On-Ramp

Services

Off-Ramp

Services

Adaptation

Mediation

Routing

Bus

ESB Service Integration

Web Site Email

Mobile Devices

CMS

CRM

ERP

Channels

Line-of-Business

Back Office

Cloud ServicesTrading Partners

Data

Services

Layered Architecture

Web Site EmailMobile Devices

CMS CRM ERP

Data / Integration

Business Logic(Application Domain)

Presentation

Mediation

Boundary

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

The Changing Faceof 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

Cloud Services Integration

Mobile Application Integration

INTERNET of THINGS

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

Aspirations • Simplicity

• Velocity

• Evolution

• Democratisation

• Cost Reduction

SIMPLICITY

Microservices

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

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

Microservices

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

… 16 VMs

400 JVMs

Load Balancer

6 VMs

12 JVMs

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

Connector

Connector

iPaaS and Microservices

Container

MessagesSchemas

Maps

MediationWorkflow

MessageEndpoint

On-Premises

Connector

Connector

Connector

Connector

Connector

Azure BizTalk Services - MABS

Bridge (container)

Connector

ConnectorMessagesSchemas

Maps

MediationMessageEndpoint

On-Premises Adapter

Pipelines

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

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

Containers

Azure Containers Today

MABSApp Service

Web AppsMobile AppsAPI AppsBizTalk AppsLogic Apps

PaaS Roles

Web RolesWorker Roles

Windows Server Containers

Windows ProcessWindows Process

Windows Server Container

Windows Process

Hyper-V Container

Windows Process

OS Kernel

Docker Engine

Docker Client

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

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

Docker and Platform Independence

On-Premises

Datacentre

Service

Provider

Cloud

Platform

ProviderRun

anywhere

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

Microservice Integration

Microservice Integration

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

One container to rule them allOn-Premises or

Service Provider

Microservice Integration

Hybrid Agents

Connectors

AdaptationMediation

On-Premises or

Service Provider

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

Mediation microservices

Microservice Integration

On-Premises or

Service Provider

Platform-level mediation microservices

Microservice Integration

On-Premises or

Service Provider

Fully-decoupled business logic

Microservice Integration

On-Premises or

Service Provider

Platform-levelservice orchestration

Microservice Integration

On-Premises or

Service Provider

Route by any means

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

Microservice Integration

On-Premises or

Service Provider

Platform-levelMonitoring & tracking

Microservice Integration

On-Premises or

Service Provider

Favour Horizontal Scaling

Microservice Integration

On-Premises or

Service Provider

Technology agnosticism

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