WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (ESB)

Preview:

Citation preview

Rob Blaauboer, Senior Consultant, Yenlo

ESB meets IoT, a primer onthe Enterprise Service Bus

March 11th 2015

Ishan Jayawardena], WSO2

About the presenters

2

Rob BlaauboerSenior Consultant, Yenlo

Rob is a Senior Business Consultant and Solution Architect with more than twenty years experience. In addition to his work he is an active blogger working on a number of articles on the 'Internet of Things' and a WSO2 'Getting Started with ...' series in which he talks about WSO2 components and their purpose especially aimed at non technical readers.

Ishan JayawardenaSenior Software Engineer, WSO2

Ishan is a Senior Software Engineer in the integration technologies team where he mainly focuses on the WSO2 Enterprise Service Bus. In addition to his product development efforts he has also provided technology consulting on customer engagements, including customer QuickStart programs focused on Enterprise Application Integration projects.

3

About Yenlo๏ Global enterprise, founded in 2007

with an international focus on delivering integration solutions based on Java open source

๏ #1 in the field of Integration Solutions

๏ #1 in Managed Services for middleware environments

๏ #1 Global Strategic Alliance partner of WSO2

๏ WSO2 Product Support

๏ WSO2 Development

๏ WSO2 QuickStarts

๏ WSO2 Training & Certifications

๏ WSO2 24/7 Managed Services

๏ WSO2 Events

What Yenlo delivers4

Enterprise Architecture

Software Development Managed Services

WSO2 Product Support WSO2 Development Support WSO2 QuickStart

WSO2 Training & Certifications WSO2 Managed Services WSO2 Events

Agenda

5

An introduction to the WSO2 ESB

๏The need to integrate or connect systems

๏Key functions of the ESB

๏Use case Internet of Things doorlock and smart thermostat

Hop on the Enterprise Service Bus

6

Perhaps you have heard one of your

colleagues mentioning ‘what we need is

an ESB to tackle our integration issues’ or

read in a magazine about the wonders of

the Enterprise Service Bus. But what is it

exactly?

Service Oriented Architecture

6

o What is SOA?

o Architectural approach based on

discrete pieces of software

providing functionality as services

to other applications. Services are

well defined and reusable.

o ESB in the Context of SOA?

o SOA: Design/develop smaller

components as services for

reusability

o ESB: Communication and

interaction between these

services

The WSO2 ESB Manager works together with other components

7

The ESB is like a traffic cop

6

“The Enterprise Service

Bus acts like a traffic cop,

directing communication

between systems but also

telling you to walk faster”

ESB in the broader picture

6

An ESB is foremost an architectural model. Core of the model is the fact that the ESB acts as a central place for message exchange. An ESB is a critical component of a Service Oriented Architecture (an architectural model where components offer services via messages to other components).

The fact that it is called enterprise service bus gives an indication where the ESB can play an important role: the Enterprise. Especially in these environments, where a large number of systems and applications are in use, ESB can help organizations to enable new products and services built on these disparate systems.

But lets not forget IoT and Cloud!

Image pnwra CC Flickrhttps://www.flickr.com/photos/pnwra/

Monoliths

6

Originally computer systems were

designed as so called monoliths.

The system performed one or a

couple of tasks and kept its data

pretty much to itself. With the

advent of client server

architecture and the three-tier

model: presentation – logic –

data, monolithic systems became

less popular. The separation of

these tiers or layers was the

beginning of the Service Oriented

Architecture movement.

Image Brian Glanz CC Flickrhttps://www.flickr.com/photos/brianglanz/

Point to point connections

6

At first, connections between systems were so-called point-to-point communication. This means that a direct connection was made between the two communicating systems. When the number of systems that needed to be connected or exchange information grew, the number of connections that need to be maintained grew more rapidly. Because if you want to have five systems connected to each other you need to define 25 connections (5^2). This becomes quickly unmanageable; imagine an enterprise with 100 separate systems.

A

B

C

D

E

1

2

3

4

5

Hub and Spoke EAI architecture

6

A better solution was needed and

that led to the enterprise application

integration (EAI) products. An

advantage over a point-to-point

connection but the hub and spoke

architecture has now proven to

become bottlenecks in the system.

The enterprise service bus is the next

logical step in connecting disparate IT

systems and programs.

Not only for legacy systems!

6

We already talked about the application infrastructure that you will find in an enterprise. Given the fact that most enterprises have been using IT systems for the better part of 40 years it’s not uncommon to find systems written in almost any imaginable language (from PL/1 to Cobol to PowerDesigner) running on in some cases obscure hardware and operating systems.

New devices are also added, how are we going to connect those?

Working with WSO2 ESB

High-level Message Flow (Programming Model)

Client Service

In Sequence

Out Sequence

Fault Seq.

1 2 3

6 5 4

!

Building Blocks

Client Service

Endpoints

Mediators

Sequences

Transports

Building Blocks

o Sequences

o Define logic for handling incoming (request) and outgoing

(response) messages

o Sequences list mediators in order of execution

o Mediators

o Take action on the message

o Filter, Transform, Drop, Send, Property, Payload Factory

o Endpoints

o Define external destination for a message, usually a service

o Transports

o Carry messages in a specific format

ESB and Eclipse (DEMO)

6

Message Flow in the ESB

6

Transports and pipes

6

Message mediation

6

Transport and pipes

6

Tasks and events

6

Apart from this you can also use tasks and events with the

ESB. A task in WSO2 ESB allows you to run a specific piece of

code by inserting it automatically into the timeline.

Events are notifications published to any system that is

interested in this event. Even the ESB itself can listen to

events and take action when they arise. An integration

pattern facilitating this is the publish-subscribe pattern.

Endless possibilities

6

Scalable

6

In order to have a high performance and high availability solution the ESB supports thousands of concurrent nonblockingHTTP(s) connections per server that will allow even the most demanding organizations to utilize the ESB. One of the examples of high load implementations is eBay that has implemented WSO2 ESB and has over 1 billion transactions per day. Of course the ESB can also support organizations that have lower demands or requirements.

Try the ESB yourself!Trying the API manager is quite simple. What you need to do to try it on

your own PC is:

•Download the WSO2 ESB from the WSO2 website

•Unzip the ESB

•If you don’t have JDK installed, download it and install

•Set the JAVA_HOME parameter

•Go to the BIN directory and start the WSO2Server (bat or sh) file

•Access the consolehttps://localhost:9943/carbon

29

Try the ESB yourself!

On the roadmap for ESBESB 4.9.0

The core foundation for a comprehensiveIntegration platform as a Service (iPaaS)» Connectors, » Connector Store, » multi-tenanted inbound messaging;» integration templates

Carbon Version: 4.3.0

28

Flickr CC Jon Rawlinsonhttps://www.flickr.com/photos/london/

Internet of Things

6

On the top of Gartner’s Hype Cycle

Introducing Toon

Introducing Okidokeys

Toon®

Monitor locking the frontdoor lock. If it is closed with a key or from the app we will log in to the smart thermostat and see what program is chosen.

If the thermostat is locked to a specific program we leave it as is, if not we set the program to ‘Away’ turning it off.

What would we like to achieve?

Login Okidokey

Call lock status API every 5 minutes

Login Toon (oAuth)

Door closed?

No

Yes

Get ThermostatStatus

Lockedon prog

ram?

Stop

No

Yes

Call API Set to Away

Status

Stop

Discussion IoT and ESB

German example

Questions & Answers

30

31

http://www.slideshare.net/YenloBV

Download the webinar presentation on slideshare:

Contact us !