API-led Integration
Chathura Kulasinghe
Associate Lead Solutions Engineer
INTEGRATION
The LEGO story of
the Modern Enterprise
Businesses, created in Digital form
image-source: https://www.thebalancecareers.com/
EVALUATE DESTINATIONS
BOOK HOTELS
BOOK FLIGHTS
RENT A CAR
ADD CALENDAR ENTRIES
Businesses, created using Building-blocks
Hotel companies
Airline companies
Car Rental companies
CheapHires
Rent your ride
Book a Car
Crown Hotel
Elephant Safari Hotel
Summit Lodge
Comfy Jets 𝟆
Royal Airlines
Flylight.com
My work hasn’t been
started yet. I need to
know what’s available
out there.
Please start using this
prototype and give us
feedback.
I understand what you
need. Please wait until
we build and deliver it.
The Market & Competition
Step 1: prototype api
Avoid the “Stopwatch”
OpenAPI
(contract)
APIAPIAPI
Mock Response
Generator
Client Applications
<Under Construction/>
{ Functional Backend }
{ Functional Backend }
API Gateway
Step 2: composition of
the functional backend
API Facade Pattern
APIAPIAPI
Mock Response
Generator
Client Applications
API Facade Mediation
<Under Construction/>
{ Composite Artefact }
{ Functional Backend }
{ Functional Backends }
{ Functional Backends }
The LEGO story applied in
application context
Functional Backend 1
(REST API)
An example: Service-chaining
OpenAPI
(contract) API
Mock Response
Generator
Client’s expectation ↑
Composition of expected functionality to Expose as an API ↓
HTTP / REST
Read Request Payload
Create new REST Payload
Invoke REST API
Read Response Payload
Create new SOAP Payload
Invoke SOAP Web Service
Read Response Payload
Respond to REST client
Functional Backend 2
(SOAP Web Service)
CompositeAPI
(Agile) Integration is The Key
OpenAPI
(contract) API
Mock Response
Generator
Client’s expectation ↑
Composition of expected functionality to Expose as an API ↓
CompositeAPI
HTTP / REST
Integration
IN WSO2 Context
WSO2 ENTERPRISE INTEGRATOR
```````
```````````` ````
EI 7X SERIESEI 6X SERIES
WSO2 ENTERPRISE INTEGRATOR
````````````
WSO2 Enterprise Integrator already
contains integration runtimes, message
brokering, business process modeling,
analytics and visual tooling capabilities.
This can be installed as a JVM based
server where you would deploy multiple
integration artefacts together.
Centralised / Server-like Decentralised / Cloud-native
API Facade Pattern - Centralised Deployment
APIAPIAPI
Mock Response
Generator
Client Applications
API Facade Mediation
<Under Construction/>
{ Composite Artefact }
{ Functional Backend }
{ Functional Backends }
{ Functional Backends }
...in a Microservices Architecture
WSO2 Micro
Integrator
WSO2 API Manager
Micro Gateway
Client Applications
Tooling...
1. Drag-and-drop visual editor
2. Intellisense-enabled source editor
3. In-built Docker, Kubernetes, and
cloud deployment capabilities
4. In-built testing and debugging with
embedded Micro Integrator
runtime
5. Integration-templates for rapid
development
The “Integration Lifecycle”
● Identifying the boundaries / API product
● Identifying the stakeholders
● Roadmap and release plan
● Faster & richer development tools
○ IDE tools, Enterprise Integrator, API Publisher, Swagger editor, Ballerina
● Review & iterate
○ Code-reviews, git-ops
Plan & Develop
● Ballerina modules published to the central
● EI / SP / IS connectors published to the WSO2 enterprise repo
● EIP templates - architecture repositories
● API developer portal & discovery
Reuse
● Multifaceted execution models
○ Private / Public / Hybrid
● Traditionally centralized
● Disaggregated micro profiles / containers
● Platform evangelism
○ Branding, hackathons, marketing, content and document
assistance
Run & execute
● Governance (design / development / runtime)
● Observability
○ Tracing, dependency analysis, impact analysis
● Version management
○ Deprecation policies and client acknowledgement
Manage
THANK YOU
wso2.com

[WSO2 Integration Summit Bern 2019] API-led Integration

  • 1.
    API-led Integration Chathura Kulasinghe AssociateLead Solutions Engineer INTEGRATION
  • 2.
    The LEGO storyof the Modern Enterprise
  • 3.
    Businesses, created inDigital form image-source: https://www.thebalancecareers.com/ EVALUATE DESTINATIONS BOOK HOTELS BOOK FLIGHTS RENT A CAR ADD CALENDAR ENTRIES
  • 4.
    Businesses, created usingBuilding-blocks Hotel companies Airline companies Car Rental companies CheapHires Rent your ride Book a Car Crown Hotel Elephant Safari Hotel Summit Lodge Comfy Jets 𝟆 Royal Airlines Flylight.com
  • 5.
    My work hasn’tbeen started yet. I need to know what’s available out there. Please start using this prototype and give us feedback. I understand what you need. Please wait until we build and deliver it. The Market & Competition
  • 6.
  • 7.
    Avoid the “Stopwatch” OpenAPI (contract) APIAPIAPI MockResponse Generator Client Applications <Under Construction/> { Functional Backend } { Functional Backend } API Gateway
  • 8.
    Step 2: compositionof the functional backend
  • 9.
    API Facade Pattern APIAPIAPI MockResponse Generator Client Applications API Facade Mediation <Under Construction/> { Composite Artefact } { Functional Backend } { Functional Backends } { Functional Backends }
  • 10.
    The LEGO storyapplied in application context
  • 11.
    Functional Backend 1 (RESTAPI) An example: Service-chaining OpenAPI (contract) API Mock Response Generator Client’s expectation ↑ Composition of expected functionality to Expose as an API ↓ HTTP / REST Read Request Payload Create new REST Payload Invoke REST API Read Response Payload Create new SOAP Payload Invoke SOAP Web Service Read Response Payload Respond to REST client Functional Backend 2 (SOAP Web Service) CompositeAPI
  • 12.
    (Agile) Integration isThe Key OpenAPI (contract) API Mock Response Generator Client’s expectation ↑ Composition of expected functionality to Expose as an API ↓ CompositeAPI HTTP / REST
  • 13.
  • 14.
  • 15.
    ``````` ```````````` ```` EI 7XSERIESEI 6X SERIES WSO2 ENTERPRISE INTEGRATOR ```````````` WSO2 Enterprise Integrator already contains integration runtimes, message brokering, business process modeling, analytics and visual tooling capabilities. This can be installed as a JVM based server where you would deploy multiple integration artefacts together. Centralised / Server-like Decentralised / Cloud-native
  • 16.
    API Facade Pattern- Centralised Deployment APIAPIAPI Mock Response Generator Client Applications API Facade Mediation <Under Construction/> { Composite Artefact } { Functional Backend } { Functional Backends } { Functional Backends }
  • 17.
    ...in a MicroservicesArchitecture WSO2 Micro Integrator WSO2 API Manager Micro Gateway Client Applications
  • 18.
    Tooling... 1. Drag-and-drop visualeditor 2. Intellisense-enabled source editor 3. In-built Docker, Kubernetes, and cloud deployment capabilities 4. In-built testing and debugging with embedded Micro Integrator runtime 5. Integration-templates for rapid development
  • 19.
  • 20.
    ● Identifying theboundaries / API product ● Identifying the stakeholders ● Roadmap and release plan ● Faster & richer development tools ○ IDE tools, Enterprise Integrator, API Publisher, Swagger editor, Ballerina ● Review & iterate ○ Code-reviews, git-ops Plan & Develop
  • 21.
    ● Ballerina modulespublished to the central ● EI / SP / IS connectors published to the WSO2 enterprise repo ● EIP templates - architecture repositories ● API developer portal & discovery Reuse
  • 22.
    ● Multifaceted executionmodels ○ Private / Public / Hybrid ● Traditionally centralized ● Disaggregated micro profiles / containers ● Platform evangelism ○ Branding, hackathons, marketing, content and document assistance Run & execute
  • 23.
    ● Governance (design/ development / runtime) ● Observability ○ Tracing, dependency analysis, impact analysis ● Version management ○ Deprecation policies and client acknowledgement Manage
  • 24.