33
WSO2 API Management Platform Webinar API Façade Pattern © WSO2 2012. Not for redistribution. Commercial in Confidence. Asanka Abeysinghe - Director, Solutions Architecture, WSO2

WSO2 Use Case - API Facade Pattern

  • Upload
    wso2

  • View
    2.920

  • Download
    4

Embed Size (px)

Citation preview

Page 1: WSO2 Use Case - API  Facade Pattern

WSO2 API Management Platform Webinar

API Façade Pattern

© WSO2 2012. Not for redistribution. Commercial in Confidence.

Asanka Abeysinghe - Director, Solutions Architecture, WSO2

Page 2: WSO2 Use Case - API  Facade Pattern

API Management Platform Webinar Series

Page 3: WSO2 Use Case - API  Facade Pattern

Source for my Business APIs

Who is going to use my APIs ?

Can I change my business / business processes ?

Write new set of services ? What will happen to the old

services ?

Can I expose my services as it is?

Page 4: WSO2 Use Case - API  Facade Pattern

Business Service Platforms - Heterogeneous

- Styles

- SOAP

- RESTful

- Bindings

- SOAP/HTTP/s

- POX/HTTP/s

- POX/JMS

- JSON/HTTP/s

- File {CSV, EDA, COBOL}

- Development languages {Java, WCF, PHP, C/C++, JavaScript}

- Functionality {Focused on internal service consumers/ applications}

- Silos, owned by various BUs, no control

Page 5: WSO2 Use Case - API  Facade Pattern

Demand for APIs

Picture Credit : http://www.newscientist.com/blogs/onepercent/2012/01/letting-gamers-experience-the.html

Page 6: WSO2 Use Case - API  Facade Pattern

Demand for APIs – cont..

Page 7: WSO2 Use Case - API  Facade Pattern

Façade Pattern

Picture Credit : http://hypebeast.com/2009/11/nike-harajuku-store-opening/

Page 8: WSO2 Use Case - API  Facade Pattern

API Façade Pattern – cont..

External Format (Demand)

Façade

Mediation

Backend Services

Page 9: WSO2 Use Case - API  Facade Pattern

API Façade Pattern – Generic Pattern

External Format (Demand)

Façade

Mediation

Backend Services

Façade + Mediation

Page 10: WSO2 Use Case - API  Facade Pattern

Results

- Brining complexity to the Façade layer {outside the firewall}

- Writing wrapper service to shape the backend services

- Few protocols {HTTP/s, JMS} cannot solve the complexity

of integration

- Service virtualization, chaining, orchestration, complex

routing requirements

- Missing architecture decupling

- Limitations to scale

Page 11: WSO2 Use Case - API  Facade Pattern

- Create APIs

- WSO2 ESB, Application Server, Data Services

Server and BPS

- Find and subscribe/buy APIs

- API Store and Governance

- Manage, secure and protect APIs

- API Management and Gateway

- Monitor and Monetize APIs

- API Monitoring and Analytics

- Develop, host and run API-based applications in a

Platform-as-a-Service

- WSO2 App Factory

- Domain Specific PaaS

WSO2’s API Management Vision

WSO2 API

Management

Platform

Page 12: WSO2 Use Case - API  Facade Pattern

Why? To be PRAGMATIC

- Gap between the demand and current service platforms

- Required to call multiple services to make a meaningful API method

/verb

- Required to call multiple data layers to build a resource / noune {MDM}

- Required to update multiple systems / sub-systems {MDM, transactions}

- Additional security due to external access {security bridging}

- Additional business rules due to external access

- Go to market

Page 13: WSO2 Use Case - API  Facade Pattern

API Façade Pattern – WSO2 recommended architecture

External Format (Demand)

Façade

Mediation

Backend Services

Façade

Mediation

Page 14: WSO2 Use Case - API  Facade Pattern

API Façade Pattern – WSO2 Implementation

External Format (Demand)

Backend Services

Façade

Mediation

Page 15: WSO2 Use Case - API  Facade Pattern

Oth

er

Serv

ice

Conta

iners

Ext API

(Demand)

API Façade

Mediation /

Service Virtualization /

Orchestration

Service

Platforms

API Façade Pattern – WSO2 Implementation extended

Page 16: WSO2 Use Case - API  Facade Pattern

API Façade Pattern – WSO2 Implementation BIG PICTURE

Page 17: WSO2 Use Case - API  Facade Pattern

API Gateway

API Store

API Publisher

API Auth Server

API Analytics

Platform

RDBMS

(G-Reg +Analytics)2.0

BAM-2.0 Data Collector

BAM-2.0 Analytics + Dashboard

BAM-2.0 Data Store

Load Balancer

Ext LB

Ext

Analytics2.0

WSO2 API Manager Platform – Component Architecture

Ext Auth

Page 18: WSO2 Use Case - API  Facade Pattern

Map API Façade to the Component Architecture

- Invoke the API: API Gateway

- Look-up, Subscribe : API Store

- Govern, LCM : Publisher

Page 19: WSO2 Use Case - API  Facade Pattern

API Publisher : LCM

Page 20: WSO2 Use Case - API  Facade Pattern

API Publisher : Analytics

Page 21: WSO2 Use Case - API  Facade Pattern

API Store : look-up/subscribe

Page 22: WSO2 Use Case - API  Facade Pattern

Under the hood of API Manager

You can combine the

Façade and

Mediation layers (if

required) and run as a

single architecture

layer.

Picture Credit : http://green.autoblog.com/2011/07/28/four-cylinder-engines-dominate-in-u-s/

Page 23: WSO2 Use Case - API  Facade Pattern

Capacity Planning How to Scale

Page 24: WSO2 Use Case - API  Facade Pattern

Capacity Planning – Facts Matrix

Component Capacity Planning Guidelines

API Gateway Peak load of the API calls

Auth Server Peak load of the API calls

API Store Peak load of the subscriptions and browsing

API Publisher Peak load of the API publishing and LCM tasks

Analytics System load of the API calls

Page 25: WSO2 Use Case - API  Facade Pattern

Deployment Pattern : Minimum with internal store

Page 26: WSO2 Use Case - API  Facade Pattern

Deployment Pattern : Minimum with external store

Page 27: WSO2 Use Case - API  Facade Pattern

Deployment Pattern : Extend to scale

Page 28: WSO2 Use Case - API  Facade Pattern

Deployment Pattern : as an internal API solution

Page 29: WSO2 Use Case - API  Facade Pattern

Summary

- Clean architecture by separating the concerns

- Have a clear separation of internal and external processing of an API

call

- Ability to scale based on the usage of each layer

- Avoid implementing new services or building wrapper service layers

- Leverage SOA principles with the new WEB API architecture

- Utilize the middleware and go to market quickly

Page 30: WSO2 Use Case - API  Facade Pattern

Future webinars on API Management

Page 31: WSO2 Use Case - API  Facade Pattern

WSO2Con 2013

Page 32: WSO2 Use Case - API  Facade Pattern

More Info

Corporate website: http://wso2.com

Solution Architecture Blog: http://wso2.com/blogs/architecture/

Business development team: [email protected]

Asanka Abeysinghe

Blog : http://asanka.abeysinghe.org

Twitter : @asankama

Page 33: WSO2 Use Case - API  Facade Pattern

33

lean . enterprise . middleware