integrating microservices in the cloud

30
Jason Bloomberg Atul Saini A leading industry analyst and expert on agile architecture Advises on Digital transformation initiatives Popular books by Jason - “The Agile Architecture Revolution- “Service Orient or Be Doomed! How Service Orientation Will Change Your Business” Speaker Introduction Founded Fiorano Software in 1995, Currently CEO & CTO Been at the forefront of integration, SOA & peer-to-peer distributed processing One of the first entrepreneurs to realize the power of Microservices

Upload: jason-bloomberg

Post on 27-Jul-2015

249 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Integrating microservices in the cloud

Jason BloombergAtul Saini

•A leading industry analyst and expert on agile

architecture

•Advises on Digital transformation initiatives

•Popular books by Jason

- “The Agile Architecture Revolution”

- “Service Orient or Be Doomed! How Service

Orientation Will Change Your Business”

Speaker Introduction

• Founded Fiorano Software in 1995,

Currently CEO & CTO

• Been at the forefront of integration, SOA

& peer-to-peer distributed processing

• One of the first entrepreneurs to realize

the power of Microservices

Page 2: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC

2

Integrating Microservices in the Cloud

Jason BloombergPresident

[email protected]

@theebizwizard

Page 3: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC3

About Jason Bloomberg

• President of Intellyx

• Advise companies on their digital transformation initiatives & help vendors communicate their agility stories

• Write for Forbes & Wired on Digital Transformation

• Buy my latest book, The Agile Architecture Revolution

Page 4: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC4

What are Microservices?

• Fine-grained units of execution– Designed to do one thing very well– Contain everything from the operating system,

platform, framework, runtime and dependencies, packaged as one unit of execution

• Microservice architecture – Promotes developing and deploying applications

composed of independent, autonomous, modular, self-contained units

Qu

ote

: Ja

naki

ram

MS

V h

ttp

://w

ww

.com

pu

terw

eekl

y.co

m/f

eatu

re/M

icro

serv

ices-

How

-to-p

rep

are

-next-

gen

era

tion

-clo

ud

-ap

plic

ati

on

s

Ph

oto

Cre

dit

: Ja

mes

Lee h

ttp

s://

ww

w.fl

ickr

.com

/ph

oto

s/jr

on

ald

lee/

Page 5: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC5

Microservice Granularity

• “Granularity” a vague term• More appropriately applied to interfaces

than to code• “Fine grained” microservices can (and often

should) have coarse-grained interfaces

Page 6: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC6

Parsimony

• As small as they should be but no smaller

• As part of refactoring, ask:– Would this microservice

work better if it were smaller?

– Would this microservice work better if it were split into two or more microservices?

Ph

oto

Cre

dit

: Keit

h W

illia

mso

n h

ttp

s://

ww

w.fl

ickr

.com

/ph

oto

s/elw

illo/

Page 7: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC7

Cohesion

• Microservices should do one thing well• Principle of modular programming since the

1960s• Web Services often suffered from low

cohesion

Page 8: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC8

Microservices & Containers

• Containers support lightweight, rapid scalability & elasticity

• Microservices well-suited for containers

• Challenges:– Managing state– Keeping track of everything– Integration, especially in

dynamic environments

Page 9: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC9

Microservices vs. Web Services

• Web Services are contracted interfaces– WSDL + other policy documents

form the contract (all XML)– Abstract underlying software

• Microservices are units of execution– Container-centric (although

containers not required)

Page 10: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC10

SOA & Microservices

• SOA Services suffer from “lipstick on the pig” problem– Complicated, problematic

software exposed as Services still complicated & problematic

• Call for key best practices underlying Service interfaces– Highly modular, “shared

nothing” code– Independently deployable– Easy to distribute & scale

What SOA Services should have been all along

Ph

oto

Cre

dit

: N

eil

Turn

er

htt

ps:

//w

ww

.flic

kr.c

om

/ph

oto

s/n

eilt

/

Page 11: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC11

Smart vs. Dumb Pipes

• Terminology from 2014 article by James Lewis and Martin Fowler of ThoughtWorks

• “Smart” pipes are centralized, traditional ESBs that provide process execution environments (e.g. BPEL engines)

• “Dumb” pipes are lightweight and platform-agnostic– RabbitMQ for example

Dumb is better than Smart? Huh??

Ph

oto

Cre

dit

: R

ren

e S

chw

ietz

ke h

ttp

s://

ww

w.fl

ickr

.com

/ph

oto

s/re

ne-g

erm

an

y/

Page 12: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC12

Challenges of Cloud Integration

• Instances (either VMs or containers) are ephemeral– Scale up or down– Any identical instance

can respond to a request

• Interactions may be asynchronous

Page 13: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC13

Microservices & State

• If a microservice is keeping track of something & it goes away or a request is routed to a different microservice instance, what happens to state information?

• Caching may be part of microservice

• Storing state information in persistence tier doesn’t scale well

The key: message-managed state

Ph

oto

Cre

dit

: Kevin

Hu

tch

inso

n h

ttp

s://

ww

w.fl

ickr

.com

/ph

oto

s/h

utc

hik

e/

Page 14: Integrating microservices in the cloud

Copyright © 2015, Intellyx, LLC

Jason Bloomberg

President, Intellyx

[email protected]

@theebizwizard

Send email NOW to [email protected] to download this presentation

Thank You!

Page 15: Integrating microservices in the cloud

Microservice-centric Integration infrastructure

Entire Contents © 2010-15, Fiorano Software Inc. All rights reserved;

Fiorano, the Fiorano logo, FioranoMQ, Fiorano Middleware Platform, Fiorano Cloud Platform, Fiorano ESB and Fiorano SOA Platform are trademarks or registered trademarks of Fiorano Software Inc. and affiliates. All other trademarks belong to their respective owners.

By:Atul SainiCEO & CTOFiorano Software Inc.

Page 16: Integrating microservices in the cloud

Implemented as Coarse Grained “Server Processes”

Each Microservice ideally runs

in a separate ‘server

process’

Possible to club multiple microservice

processes into a single

process

Each container can support multiple server processes

Threads are too ‘fine grained’

Process-level execution

preferred in practice

Document-centric Interfaces

XML JSON

Microservices in Practice

Page 17: Integrating microservices in the cloud

Microservices in Practice …. (2)

No external dependencies!

• Each Microservice contains all the code/libraries required for independent execution

• Allows Microservices to be deployed across cloud, hybrid and on-premise networks

Attached GUI for each Microservice

• Each Microservice has an independent Graphical User Interface

• Each Microservice can be developed in one or more programming languages

• Multi-language (Java, C, C++, C#, Scripting languages), multi-platform architecture

Page 18: Integrating microservices in the cloud

Microservices in Practice …. (3)

Asyhchronous transport,

distributed across Cloud, Hybrid and

Enterprise environments

• Allows concurrent, parallel execution of Transformations and other computations

• Peer-to-peer data transfers for optimal performance

• Linearly scalable

All State managed in the messaging tier

• Storing state information in the persistence tier does not scale

• Raw Pipe Pitfalls: some infrastructure intelligence saves a lot of time!

MICROSERVICES

Page 19: Integrating microservices in the cloud

Peer-to-Peer Integration Infrastructure

Social

Mobile

Big Data & Analytics

Internetof Things

Cloud to On-prem

Database Custom Apps Legacy AppsEnterprise Systems

Integration Peer

Integration Peer

Page 20: Integrating microservices in the cloud

“Infrastructure” Microservices

EAIBusiness

IntelligenceCloud

ApplicationsSocial / MobileApplications Application

Microservices

Fiorano: Infrastructure for Dynamic Enterprise Services

ContentBased

Routing

Caching REST JSONWeb

Services Transformation

Scheduler Aggregation SequenceDistribution EncryptionError

Listener

InfrastructureMicroservices

Tracing, Logging Manage Lifecycle, Monitor Security Remote Deployment

Peer-to-Peer Enterprise MessagingCore Infrastructure

Core Integration Infrastructure implemented as Microservices Transformation, Routing, Aggregation, Caching, … Horizontal scalability, Message-managed stateDynamically move required functionality to the cloud compute-point

Page 21: Integrating microservices in the cloud

Peer-to-Peer BenefitsCritical for flexibility,Performance, scaling

Identified slow components can be run on a different server/peer instantlyRemove bottlenecks as soon as they are identified

BENEFITS OF Peer-to-Peer Messaging

Infrastructure

Page 22: Integrating microservices in the cloud

Centralized management / app composition

Centralized management and

application composition

Central console for management,

monitoring

Applications composed at the hub and

distributed to relevant peers at runtime

Runtime data does not traverse the central hub; just

‘admin’ info

Page 23: Integrating microservices in the cloud

Mobile Apps

Legacy Systems (On-prem)

Social Media / Cloud Apps

Swift Transaction

Rest/JSON

Database

WebService

SWIFT

Salesforce

SAP

Salesforce

SAP Adapter

Database

Administration and Repository Server – HA Cluster

FPS

PSPS

PS

PSPS

Tools

P2P Microservices Infrastructure

Choreographed Business Services

• Distributed

• Document-centric

• Event Driven

• Loosely Coupled

• Asynchronous

• Message-drivenPS

Page 24: Integrating microservices in the cloud

Business Value of Microservices

Fully integrated development, deployment, management and support

Audit services

Time to market

Citizen Integration

Real-Time business agility

Hybrid Integration

Reduce costs

Low cost of implementation

Page 25: Integrating microservices in the cloud

A Case Study – Delaware North Companies

“Fiorano’s peer-to-peer servers, the way they could scale, was compelling – even before the cloud. Fiorano had a very elegant solution.”

Kevin Quinlivan, CIO, Delaware North

Find full interview on Forbes article "Peanuts, Popcorn, Crackerjack -- And Mobile-First, Digital SOA” by Jason Bloomberg

Page 26: Integrating microservices in the cloud

A Case Study – Delaware North Companies

Challenges• Unstructured data • Manual data process • Lack of real-time data access • Disparate applications

Result•A unified business intelligence dashboard•Real-Time data access, including to Mobile interfaces• Scalable, secure and reliable system in place for digital transformation

Scott Mercer, Manager of the Service-Oriented Architecture (SOA)Solutions Team at Delaware North

"Our partners and clients love the speed at which we get data back to them and the near-real-time analytics it can provide”

Page 27: Integrating microservices in the cloud

Fiorano Product Portfolio

Fiorano Microservices

Platform

Fiorano API Management

• Fiorano ESB / SOA / B2B• Fiorano Cloud • FioranoMQ® (Messaging

Middleware)

Page 28: Integrating microservices in the cloud

Thank you !Atul SainiCEO & CTOFiorano Software Inc.

Entire Contents © 2010-15, Fiorano Software Inc. All rights reserved;

Fiorano, the Fiorano logo, FioranoMQ, Fiorano Middleware Platform, Fiorano Cloud Platform, Fiorano ESB and Fiorano SOA Platform are trademarks or registered trademarks of Fiorano Software Inc. and affiliates. All other trademarks belong to their respective owners.

Page 29: Integrating microservices in the cloud

Next Steps…

Contact [email protected] Download:www.fiorano.com/downloads

Which Projects ? Mobile Cloud Digital TransformationReal-time dataScalability required

DOWNLOAD and try the Fiorano Microservices

Platform

FIORANO DEMO for

key personnel

Proof of Concept for

Project

Q&A session in progress – Please type in your questions using the Chat Q&A window

Q&A Session in Progress

Next Steps…

Page 30: Integrating microservices in the cloud

Thank You !

To find out more about Fiorano solutions or to set up a Demo or a POC, please visit www.fiorano.com

or send an Email to [email protected].

AMERICA’SFiorano Software, Inc.230 S. California Avenue,Suite 103,Palo Alto,CA 94306 USA Tel: +1 650 326 1136Fax: +1 646 607 5875Toll-Free: +1 800 663 3621Email: [email protected]

EMEAFiorano Software Ltd 3000 Hillswood DriveHillswood Business ParkChertsey Surrey KT16 0RS UK Tel: +44 (0) 1932 895005 Fax: +44 (0) 1932 325413Email: [email protected]

APACFiorano Software Pte. Ltd. Level 42, Suntec Tower Three 8 Temasek Boulevard Singapore 038988 Tel: +65 68292234Fax: +65 68292235 Email: [email protected]