Upload
folio3-software
View
179
Download
2
Tags:
Embed Size (px)
Citation preview
An introduction toAn introduction toEnterprise Service BusEnterprise Service Bus
www.folio3.com@folio_3
Who We Are
We are a Development Partner for our customers
Design software solutions, not just implement them
Focus on the solution – Platform and technology agnostic
Expertise in building applications that are:
Mobile Social Cloud-based Gamified
What We Do Areas of Focus
Enterprise
Custom enterprise applications
Product development targeting the enterprise
Mobile
Custom mobile apps for iOS, Android, Windows Phone, BB OS
Mobile platform (server-to-server) development
Social Media
CMS based websites for consumers and enterprise (corporate, consumer,
community & social networking)
Social media platform development (enterprise & consumer)
Folio3 At a Glance Founded in 2005
Over 200 full time employees
Offices in the US, Canada, Bulgaria & Pakistan
Palo Alto, CA. Sofia, Bulgaria
Karachi, Pakistan
Toronto, Canada
Areas of Focus: Enterprise Automating workflows
Cloud based solutions
Application integration
Platform development
Healthcare
Mobile Enterprise
Digital Media
Supply Chain
Areas of Focus: Mobile Serious enterprise applications for Banks,
Businesses
Fun consumer apps for app discovery,
interaction, exercise gamification and play
Educational apps
Augmented Reality apps
Mobile Platforms
Areas of Focus: Web & Social Media
Community Sites based on
Content Management Systems
Enterprise Social Networking
Social Games for Facebook &
Mobile
Companion Apps for games
An introduction toAn introduction toEnterprise Service BusEnterprise Service Bus
www.folio3.com @folio_3
Background
Enterprises usually have more than one application
Custom build applications
Legacy systems
ERP, CRM systems like SAP, Salesforce etc.
Users expect instant access to all business functions an enterprise can
offer.
This requires disparate applications to be connected into a larger,
integrated solution.
This integration is usually achieved through the use of some form of
"middleware“.
Middleware Solutions
MOM (Message Oriented Middleware)
SOA (Service Oriented Architecture)
ESB (Enterprise Service Bus)
Challenges
Operating Systems
Platforms
Protocols
APIs
CRM
Linux, WS
Billing
Mainframe, FTP
GL
Linux, JMS
Reporting
Windows, WS
Enterprise Service Bus (ESB)
ESB is a software infrastructure that facilitates application integration.
An ESB provides an abstraction layer on top of an implementation of
an enterprise messaging system, which allows integration architects to
exploit the value of messaging without writing code. The ESB forms the
backbone of the SOA system and provides necessary infrastructure for
building SOA applications. It acts as a transit system or bus through
which different applications talk to each other using different protocols
and message formats.
Enterprise Service Bus (ESB)
Integrates applications
Coordinates resources
Manipulates information
Enables the connection of software that runs on:
Different platforms
Different programming languages
Different programming models.
Properties of an ESB
Loosely coupled
Event Driven
Abstract Endpoints
Intelligent Routing
Message Transformation (inbound/outbound)
Reliable Messaging
Multi-Protocol Message Bus
Transactional
Securable
Features of an ESB
Multiple Protocols
Data Transformation
Data Mapping
Message Routing
Orchestration
Job Scheduling
Audit Trail
Configuration UI
Data Transformation
Object to XML Transformer
XML to Object Transformer
XML to String Transformer
XSLT Transformer
Xquery Transformer
Custom Transformer
Smooks
Etc.
Data Mapping
Database to XML
XML to Database
Object to XML
Object to Database
XML to Object
Database to Object
BPEL and Smooks Mapper
Etc.
Message Routing
Inbound Routers
Outbound Routers
Content based Message Routing
Xpath
Groovy
String matching etc.
Inbound Routers No Router
Selective Consumer
Idempotent Message Filter
Idempotent Secure Hash Message Filter
Collection Aggregator
Message Chunking Aggregator
Custom Correlation Aggregator
Correlation Resequencer
Forwarding Router
Wiretap Router
Custom inbound Router
No Router
If no router is defined on the inbound, all messages received via the
endpoints will be processed by the service component.
<inbound>
<jms:inbound-endpoint queue=“inbound.A"/>
</inbound>
<component class="PatientEvaluationService“/>
Selective Consumer
Can apply one or more filters to the incoming message.
If the filters match, the message is forwarded to the component.
Otherwise, the message is forwarded to the catch-all strategy on the router.
<selective-consumer-router>
<jxpath-filter expression="msg/header/resultcode = 'success'"/>
</selective-consumer-router>
<forwarding-catch-all-strategy>
<jms:endpoint topic="error.topic"/>
</forwarding-catch-all-strategy>
Outbound Routers Pass through Router
Filtering Router
Recipient List Routers
Multicasting Router
Chaining Router
List Message Splitter
Filtering XML Message Splitter
Expression Splitter Router
Exception Based Routers
Template Endpoint Router
Custom Outbound Router
Matching All Routers
A message is processed only by the FIRST outbound router
whose conditions it matches
Matching All Routers is used for processing by ALL the matching
outbound routers
For example, assume you always want to send a confirmation of
a deposit back to the original depositor. Also assume that if the
deposit was above $100,000, you want to send a notification
message to the 'high net worth client manager' for possible
follow-up
Matching All Routers
<outbound matchAll="true">
<filtering-router>
<endpoint address="jms://deposit.queue"/>
</filtering-router>
<filtering-router>
<jms:outbound-endpoint queue="large.deposit.queue"/>
<jxpath-filter expression="deposit/amount >= 100000"/>
</filtering-router>
</outbound>
ESB Products Commercial
MS Biztalk Server 2010
Weblogic Integration
IBM Websphere Enterprise Service Bus
Open Source
Apache Mule
Jboss ESB
SUN Open ESB
Jitterbit
ObjectWeb PEtALS
Fuse ESB, WSO2 ESB
Apache ServiceMix
References
http://www.esbinaction.com/presentation/EIwithMule_javazon
e_2007.pdf
http://blogs.msdn.com/b/mohammadakif/archive/
http://d3s.mff.cuni.cz/research/seminar/download/2006-03-14-
Kapova-ESB.pdf2006/09/17/759414.aspx
http://www.binaryspectrum.com/service-oriented_arc
http://www.esbinaction.com/presentation/OpenSourceESBs_ja
vapolis_2007.pdfhitecture/esb.html
Contact
For more details about our services, please get in
touch with us.
US Office: (408) 365-4638
www.folio3.com