The Middleware technology that connects the enterprise

56
Kasun Indrasiri Software Architect, WSO2 September 2015

Transcript of The Middleware technology that connects the enterprise

Page 1: The Middleware technology that connects the enterprise

Kasun IndrasiriSoftware Architect, WSO2

September 2015

Page 2: The Middleware technology that connects the enterprise

Middleware Evolution of Middleware Rise of SOA/Web Services/ESB Beyond ESB WSO2 Middleware Platform QnA

Page 3: The Middleware technology that connects the enterprise

What is ‘Middleware’

Image courtesy : http://xpedium.com/images/Bridge.jpg

Page 4: The Middleware technology that connects the enterprise

What is ‘Middleware’ software that allows organizations to share data between

disparate systems that do not communicate easily

“software glue” that ties different applications together

http://www.vita.virginia.gov/

Page 5: The Middleware technology that connects the enterprise

Why Middleware? Middleware enables applications running across multiple

platforms to communicate with each other .

Middleware shields the developer from dependencies on Network Protocols, OS and hardware platforms.

Image courtesy : http://www.technotec.com/images/middle.jpg

Page 6: The Middleware technology that connects the enterprise

Home grown middleware

Remote Procedure Calls(RPC)

Object Oriented Middleware

MOM (Message Oriented Middleware)

Transaction Processing Monitors

Page 7: The Middleware technology that connects the enterprise

Home grown middleware

Customized for specific needs

Extensibility, maintainability and scalability constrains

Image courtesy : http://r1.cygnuspub.com/files/cygnus/image/CGN/2013/JUN/640x360/efi-radius_10964116.jpg

Page 8: The Middleware technology that connects the enterprise

Remote Procedure Calls(RPC)

Function oriented, synchronous, location transparency

E.g: ONC RPC, DCE/RPC

Image courtesy : http://www.cl.cam.ac.uk/teaching/1011/CDSysII/12-middleware.pdf

5

Part I: Remote Procedure Call (RPC)

• Masks remote function calls as being local

• Client/server model

• Request/reply paradigm usually implemented with

message passing in RPC service

• Marshalling of function parameters and return value

Caller RPC Service RPC Service RemoteFunction

call(…)

1) Marshal args2) Generate ID3) Start timer 4) Unmarshal

5) Record ID

6) Marshal7) Set timer

8) Unmarshal9) Acknowledge

fun(…)

message

Middleware

Page 9: The Middleware technology that connects the enterprise

Object Oriented Middleware

Evolved from RPC, Language independent, sync/aync, IDL

Automated marshalling and unmarshalling,

CORBA, Java RMI

9

Part II: Object-Oriented Middleware (OOM)

• Objects can be local or remote

• Object references can be local or remote

• Remote objects have visible remote interfaces

• Masks remote objects as being local using proxy objects

• Remote method invocation

object A

proxy

object B

OOM OOM

skeleton

object B

object B

local remote

objectrequestbroker

/object

manager

objectrequestbroker

/object

manager

Middleware

Page 10: The Middleware technology that connects the enterprise

MOM (Message Oriented Middleware)

Data transmission through messages, asynchronous

Message, Queue / Message Queuing and Pub-Sub

Java Message Service (JMS)

IBM WebSphere MQ, Active MQ

18

Part III: Message-Oriented Middleware (MOM)

Communication using messages

Messages stored in message queues

message servers decouple client and server

Various assumptions about message content

Client App.

local messagequeues

Server App.

local messagequeues

messagequeues

Network Network Network

Message Servers

Middleware

Page 11: The Middleware technology that connects the enterprise

Transaction Processing Monitors

coordinating and monitoring applications in a distributed

environment

Leader election, failover

Tuxedo, IBM CICS, Apache Zookeeper, Hazelcast

Page 12: The Middleware technology that connects the enterprise

Different middleware has different advantages

A ‘super-middleware’ is unlikely. Organizations can make their own decisions Legacy systems may live forever.

Page 13: The Middleware technology that connects the enterprise

Disparate systems (legacy, on-premise and cloud) Diverse business requirements

Page 14: The Middleware technology that connects the enterprise

P2P/Spaghetti integration

Page 15: The Middleware technology that connects the enterprise

Replace the direct connections between systems

Hub and spoke architecture

Each system needs only one interface to the central EAI server

Page 16: The Middleware technology that connects the enterprise

EAI Hub/spoke Avoid P2P integration, centralized, single point of failure

Page 17: The Middleware technology that connects the enterprise

EAI Bus

Page 18: The Middleware technology that connects the enterprise

Proprietary and heavyweight Support specific vendor's subset of technology Not standardized Extensibility and scalability issues Single point of integration

Page 19: The Middleware technology that connects the enterprise

The idea is to breaking up monolithic systems into basic services that can be flexibly orchestrated

Platform/programming language-neutral protocol and message format (XML)

Page 20: The Middleware technology that connects the enterprise

Each business functionality is implemented as a Service and exposed via standard protocols.

Web services vs SOA? Can SOA eliminate P2P Integration?

Page 21: The Middleware technology that connects the enterprise

An ESB is a middleware solution that enables interoperability among heterogeneous environments based on SOA.

Stateless and Seamless Integration Standard Protocols – SOAP, REST, JSON etc. Transports – HTTP/S, JMS, TCP etc.

Page 22: The Middleware technology that connects the enterprise

A simple ESB use case.

Page 23: The Middleware technology that connects the enterprise

Routing

Page 24: The Middleware technology that connects the enterprise

Traffic Filtering

Foo

Bar

Bar

Page 25: The Middleware technology that connects the enterprise

Service Virtualization

Page 26: The Middleware technology that connects the enterprise

Service Orchestration

Page 27: The Middleware technology that connects the enterprise

Transformations

Page 28: The Middleware technology that connects the enterprise

Protocol and Message Format Switching

HTTP->JMS

SOAP -> FIX (Financial Information eXchange)

Page 29: The Middleware technology that connects the enterprise

Load Balancing/Failover

Page 30: The Middleware technology that connects the enterprise

QoS : Security, Throttling, Caching

WS-Security / REST Security

Throttling – concurrency/rate

Caching – local/distributed

Page 31: The Middleware technology that connects the enterprise

Exposing/Invoking web services

Page 32: The Middleware technology that connects the enterprise

Exposing/Invoking RESTful interfaces

HTTP RequestGET, POST, PUT, DELETE

Page 33: The Middleware technology that connects the enterprise

Store and Forward

Guaranteed Delivery

Message Store

Page 34: The Middleware technology that connects the enterprise

Integrate with proprietary systems/protocols

Page 35: The Middleware technology that connects the enterprise

Tasks Coordination

Page 36: The Middleware technology that connects the enterprise

Integrate with web APIs

Page 37: The Middleware technology that connects the enterprise

De facto standard for enterprise integration http://www.eaipatterns.com/toc.html

Page 38: The Middleware technology that connects the enterprise
Page 39: The Middleware technology that connects the enterprise

7 7 © 2013 IBM Corporation

The Business of APIs

Grow  revenues…

…  W

h

ile  reducing  overhead

“$7bn worth of items on eBay through APIs” Mark Carges (Ebay CTO)

The API which has easily 10 times more traffic then the website, has been really very important to us.” Biz Stone (Co-founder, Twitter)

“The adoption of Amazon’s Web services is currently driving more network activity then everything Amazon does through their traditional web sites.” Jeff Bar (Amazon evangelist) / Dion Hinchcliffe (Journalist)

source: SOA and Apis – Impact2013

“The API which has easily 10 times more traffic than the website, has been really very important to us.”

“The adoption of Amazon’s Web services is currently driving more network activity than everything Amazon does through their traditional web sites.”

Page 40: The Middleware technology that connects the enterprise

8 8 © 2013 IBM Corporation

Apps,  APIs  and  API  Mgmt…

Business Owner IT

Developer

Consumers

New business opportunities

• New markets

• Increase customers

• Enhance branding

• Competitive advantage

Extend development team

•Increase innovation

•Increase scale

Partner/supplier

alignment

Benefits

Challenges

Business strategy

Infrastructure

• Security

• Creation

• Scalability

Operational control

• Publish

• Analyze

• Monitor

source: SOA and Apis – Impact2013

Page 41: The Middleware technology that connects the enterprise

Managed, monitored, monetized and versioned business functionalities are exposed as APIs.

Exposing business functions to Internal and external parties (Open APIs, Internal APIs, Partner APIs)

Eg: https://dev.twitter.com/docs/api#88

Page 42: The Middleware technology that connects the enterprise
Page 43: The Middleware technology that connects the enterprise
Page 44: The Middleware technology that connects the enterprise

Building a ‘Connected Business’

Changing an organization to a connected organization

Internally and externally connected

Interactions through services, systems, APIs etc.

Image courtesy : http://www.mydrivingseat.com/the-blog/profound-practical-proven-system-of-business-agility/

Page 45: The Middleware technology that connects the enterprise
Page 46: The Middleware technology that connects the enterprise
Page 47: The Middleware technology that connects the enterprise
Page 48: The Middleware technology that connects the enterprise

The heart of the WSO2 Integration Platform A light weight, high performance ESB Comprehensive REST, SOAP, WS-* support Zero code/completely configuration driven 100% compliant with EIPs Extensible and Scalable

Page 49: The Middleware technology that connects the enterprise
Page 50: The Middleware technology that connects the enterprise

Only Open Source API Management Platform API Publisher

Starting point of API creation

Control API Lifecycle

Documentation, Versioning, Authorization, Throttling

API Store Store of published APIs

Enterprise API Store

API Gateway ( ESB Features + API-M Handlers) Runtime for API calls

Routing API Traffic

Page 51: The Middleware technology that connects the enterprise

High volume – 6 billion transactions per day

Page 52: The Middleware technology that connects the enterprise

Hybrid Integration

Page 53: The Middleware technology that connects the enterprise
Page 54: The Middleware technology that connects the enterprise

http://www.slideshare.net/ibmapimgmt/soa-and-apis http://www.omg.org/news/meetings/workshops/WebServEurope_Manu

al/01-1_Baker.pdf http://wso2.com/whitepapers/wso2-whitepaper-soa-and-api-

convergence-strategy-and-tactics/ http://www.omg.org/news/meetings/workshops/MDA-SOA-

WS_Manual/04-A1_Brown.pdf http://www.slideshare.net/udaysaikia/12-middleware Evolution of Integration http://wso2.com/whitepapers/the-evolution-of-

Integration-a-comprehensive-platform-for-a-connected-business

Page 55: The Middleware technology that connects the enterprise
Page 56: The Middleware technology that connects the enterprise