Upload
wso2
View
724
Download
3
Tags:
Embed Size (px)
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 !