SlideShare a Scribd company logo
1 of 35
Exigen Services confidential Exigen Services confidential
Enterprise Service Bus
Evgeny Epifantsev
december 2009
updated 2012
Exigen Services confidential
Trainer contacts
• Evgeny Epifantsev
• Developer
• eepifantsev@exigenservices.com
2
Exigen Services confidential
Goals
• Provide an overview on:
• What is Enterprise Service Bus?
• How to implement it?
3
Exigen Services confidential
Agenda
• Introduction
• EAI evolution: P2P->MOM Hub->ESB
• ESB purpose and functions overview
• QoS and Policy Enforcement
• Components: Mediator VFTER (validate, filter, transform, enrich, route),
Choreographer
• Example of above topics
• Open source ESB
4
Exigen Services confidential
Part 1: Overview and ESB Concepts
Exigen Services confidential
Definition
6
ESB is idea of using common integration infrastructure across all
enterprise application and systems.
An Enterprise Service Bus (ESB) is a new architecture that exploits
Web services, messaging middleware, intelligent routing,
and transformation. ESBs act as a lightweight,
ubiquitous integration backbone through which software services
and application components flow."
Exigen Services confidential
What is ESB?
7
What is ESB?
Is a Pattern?
Is a Product?
Is an Architectural Component?
Is a Hardware Component?
Exigen Services confidential
Evolution
8
Point-to-Point
- Tight coupling
- Complexity ~N2
- No visibility
- Hard to secure
Service Bus (ESB)
+ Scalable
+ Service-oriented
+ Flexible
- Harder administration
+ Standards-based
+ Cost less than EAI
bus
Enterprise Application
Integration
Hub:
- Scalability
+ Easy administration
Bus:
- Standards and
proprietary
- High cost
Exigen Services confidential
ESB Architecture context
9
Java/EJB Http
Java/EJB HttpService location transparency
Sharing service across the enterprise
Separate of Business Services from Service implementation
Exigen Services confidential
ESB as a Pattern of SOA
10
WSDL
Business service
definition PlaceTrade
PlaceTrade
saveOrTradeOrder()
Java
implementation service
For saveOrTradeOrder()
Exigen Services confidential
ESB capabilities
11
Routing
Message
transformation
Message
enhancement
Security
Transaction
management Service
orchestration
Process
choreography
Message
processing
Mapping
service
Protocol
transformation
Exigen Services confidential
ESB basic functions
ROUTING messages between services
• Addressability, static/deterministic routing
• Content-based routing
• Policy-based routing
• Complex Rule-based routing
CONVERTATION
•Adapters and protocol conversion
•Transport protocols (synchronous and
asynchronous)
MESSAGING
• Message transformation
• Message processing
• Message enhancement
Exigen Services confidential
BUS: Protocol Conversion
13
ESB
Requests
Responses
Requests
Responses
Requests
Responses
Requests
Responses
Service
Requester
Service
Provider
Phone with wap - WXML/HTTPPhone with wap - WXML/HTTP
.NET - SOAP/HTTP.NET - SOAP/HTTP
C++ - XML/JMSC++ - XML/JMS
SAP - BAPISAP - BAPI
WebSphere 5.1 - SOAP/JMSWebSphere 5.1 - SOAP/JMS
SAP - BAPISAP - BAPI
External partner - SOAP/HTTPSExternal partner - SOAP/HTTPS
User application - RMIUser application - RMI
Database – SQLDatabase – SQL
Application - XML/JMSApplication - XML/JMS
Exigen Services confidential
Service mapping
14
The ability to translate a business service into the corresponding
service implementation and provide binding and location information
 Could be implemented through XML, a database, or embedded
within the Mediator ESB component
 Usually contains the following core information
• Implementation service name
• Service protocol and binding information
• Protocol-specific info (i.e. timeouts)
• Service-specific routing information
Exigen Services confidential
Process choreography
15
The ability to manage complex business process that require the
coordination of multiple business services to fulfill a single business
service request
 Usually BPEL based
PlaceFixedIncomeTrade
CreateOrder SelectBid PlaceTrade ExecuteTrade
Each of business node can be an
independent business service
Exigen Services confidential
Service orchestration
16
The ability to manage the coordination of multiple implementation
services
 Can be BPEL based but is usually implemented through inter-
service
communication or aggregate services
 Difference between Service orchestration and Process
Choreography is based on type of service being coordinated
• Process choreography - Business services
• Service orchestration - implementation service
Exigen Services confidential
Transaction management
17
The ability to provide a single unit of work for a business service
request by providing a framework for the coordination of multiple
disparate services
 ESB should provide a compensatory transactional framework for a
service request
• WS - Coordination
• WS - AT
• WS –Business Activity
Exigen Services confidential
Security
18
The ability to protect enterprise services from authorized access
 Services visible to the entire enterprise through ESB
 The 4 “A’s” of Security
•Authentication
• Authorization
• Auditing
• Administration
 ESB should provide authentication, authorization and auditing
 ESB should access a security manager for authentication and
authorization rather than have the direct responsibility
Exigen Services confidential
Quality of Service and Policy enforcement
19
• Security WS-Security, SAML
• Reliable delivery for each connection
• Transaction management
WS-AT, WS-Coordination,
WS-Business Activity
• Traffic management
• Policy (WS-Policy)
R1R1
P1P1
P2P2
Tx_not
supported
Tx_not
supported
Tx_requiredTx_required
Tx_requiredTx_required
CompensationCompensation
CompensationCompensation
requestor provider
1
2
3
response
No
answer
Exigen Services confidential
CEI
Exigen Services confidential
Common Event Infrastructure
21
Based on Common Base Event
(IBM implementation of Web Services Distributed Management )
Common Event Infrastructure (CEI) is IBM's implementation of API, and
infrastructure for the creation, transmission, persistence and distribution of a wide
range of business, system and network Common Base Event formatted events.
CEI Event Submission Interfaces (Event Source)
CEI Event Subscription Interfaces (Event Server)
CEI Event Query Interfaces (Event Server)
Exigen Services confidential
CEI Event types
Exigen Services confidential
Common Event Browser
Exigen Services confidential
ESB Components
Exigen Services confidential
ESB components
25
 ESB can broken down into the following components
• Mediator
• Service registry
• Choreographer
• Rules Engine
MediatorMediator
Service
registry
Service
registry
ChoreographerChoreographer Rules engineRules engine
Exigen Services confidential
Mediator (Routing, Message transformation)
26
Mediator
Requests
Responses
Requests
Responses
Requests
Responses
Requests
Responses
Service
Requester
Service
ProviderValidation
XSD
Validation
XSD
Transform
XSLT
Transform
XSLT
Enrich
XPath
Enrich
XPath
OperateOperateRoute
UDDI
Route
UDDI
VETRO
export
import
Exigen Services confidential
Process choreographer
27
BPEL – Business Process Execution language
partnerLink
purchasing
partnerLink
purchasing
purchaseOrderPTpurchaseOrderPT partnerLink
invoicing
partnerLink
invoicing
ComputePricePTComputePricePT
invoiceCallbackPTinvoiceCallbackPT
<wsdl:portType
name="purchaseOrderPT">
<wsdl:operation …
</wsdl:operation>
</wsdl:portType>
<plnk:partnerLinkType
name="purchasingLT">
</plnk:partnerLinkType>
<plnk:partnerLinkType name="invoicingLT">
<plnk:role portType="pos:computePricePT" />
<plnk:role portType="pos:invoiceCallbackPT“ />
</plnk:partnerLinkType>
Exigen Services confidential
BPEL Process
28
<sequence>
<receive portType="lns:purchaseOrderPT" … />
<flow>
<invoke portType="lns:computePricePT“ … />
<receive portType="lns:invoiceCallbackPT" …/>
</flow>
<reply portType="lns:purchaseOrderPT” … />
<sequence>
<sequence>
<receive portType="lns:purchaseOrderPT" … />
<flow>
<invoke portType="lns:computePricePT“ … />
<receive portType="lns:invoiceCallbackPT" …/>
</flow>
<reply portType="lns:purchaseOrderPT” … />
<sequence>
Exigen Services confidential
Implementation Mediation Module
29
Mediation flow
Mediation module
Requests
Responses
Requests
Responses
Requests
Responses
Requests
Responses
Service
Requester
Service
Provider
Exports Imports
Mediation flow
component ExportsImports
Exigen Services confidential
Implementation mediation Flow
30
InterfacesInterfaces Mediation primitivesMediation primitives
Exigen Services confidential
Implementation in Business Works
31
Exigen Services confidential
Implementation steps
32
Import WSDL(SCA, Web
Service, HTML, JMS)
Import WSDL(SCA, Web
Service, HTML, JMS)
Create mediatorCreate mediator
Connect WSDL ports with
mediator (import)
Connect WSDL ports with
mediator (import)
Generate exports with
binging (SCA, Web
Service, HTML, JMS)
Generate exports with
binging (SCA, Web
Service, HTML, JMS)
Messaging ResourcesWebSphere ESB
Create bus instanceCreate bus instance
Setup SDO repositorySetup SDO repository
Setup resource adaptersSetup resource adapters
Create client listeners for
every protocols
Create client listeners for
every protocols
Create interceptorsCreate interceptors
Create mediator (EJB)Create mediator (EJB)
Exigen Services confidential
ESB platforms
33
Sun GlassFish ESB NetBeans IDE, BPEL orchestration, WS JAX-WS,
Business Rules, Transaction, BAM
Matrix BusinessWorks no transaction, no dusiness rules, BAM
Mule ESB EE custom implementation model, WS CXF, No BAM,
no Business rules
IONA Fuse ESB Apache ServiceMix, JBI, OSGI, WS CXF, no BAM,
Business rules
WSO2 ESB Apache Synapse, WS Apache Axis2
WebSphere ESB WebSphere MQ, JMS, BPEL, SCA
WS JAX-WS, BAM, Business Rules
Oracle ESB JMS, BPEL
Exigen Services confidential
Open source way
34
ESB
Business
Rules
Business
Rules
DroolsDrools
RoutingRouting
eipeip
javajava
camelcamel
ChoreographyChoreographyjBPMjBPM
Transform
ation
Transform
ation
xpathxpath
xsltxslt
simplesimple
EventsEventsIBMIBM
OracleOracle
JMSJMS
AMQAMQ
Exigen Services confidential
Thank You!
Questions?
35

More Related Content

What's hot

WSO2 ESB and SOA
WSO2 ESB and SOAWSO2 ESB and SOA
WSO2 ESB and SOAWSO2
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELGuido Schmutz
 
Service Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service BusService Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service BusIMC Institute
 
ESB and SOA
ESB and SOAESB and SOA
ESB and SOAWSO2
 
ESB Evaluation Framework
ESB Evaluation FrameworkESB Evaluation Framework
ESB Evaluation FrameworkWSO2
 
Enterprise service bus
Enterprise service busEnterprise service bus
Enterprise service busUpul Doluweera
 
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)WSO2
 
SOA Suite 12c - Service Bus new features summary
SOA Suite 12c - Service Bus new features summarySOA Suite 12c - Service Bus new features summary
SOA Suite 12c - Service Bus new features summaryLucas Jellema
 
Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)Guido Schmutz
 
Biztalk ESB Toolkit Introduction
Biztalk ESB Toolkit IntroductionBiztalk ESB Toolkit Introduction
Biztalk ESB Toolkit IntroductionSaffi Ali
 
Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...
Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...
Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...Sandro Pereira
 
WSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep DiveWSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep DiveWSO2
 
Overview of SOA and the role of ESB / OSB
Overview of SOA and the role of ESB / OSBOverview of SOA and the role of ESB / OSB
Overview of SOA and the role of ESB / OSBNahser Bakht
 
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsIntroducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsLucas Jellema
 
WSO2 ESB - The Backbone of Integration
WSO2 ESB - The Backbone of Integration WSO2 ESB - The Backbone of Integration
WSO2 ESB - The Backbone of Integration Kasun Indrasiri
 

What's hot (20)

WSO2 ESB and SOA
WSO2 ESB and SOAWSO2 ESB and SOA
WSO2 ESB and SOA
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
 
Service Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service BusService Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
Service Oriented Architecture (SOA) [2/5] : Enterprise Service Bus
 
ESB and SOA
ESB and SOAESB and SOA
ESB and SOA
 
ESB Concepts
ESB ConceptsESB Concepts
ESB Concepts
 
Enterprise Service Bus Part 1
Enterprise Service Bus Part 1Enterprise Service Bus Part 1
Enterprise Service Bus Part 1
 
oracle-osb
oracle-osboracle-osb
oracle-osb
 
Overview of ESB at Azilen Tech Meetup
Overview of ESB at Azilen Tech MeetupOverview of ESB at Azilen Tech Meetup
Overview of ESB at Azilen Tech Meetup
 
ESB Evaluation Framework
ESB Evaluation FrameworkESB Evaluation Framework
ESB Evaluation Framework
 
Enterprise service bus
Enterprise service busEnterprise service bus
Enterprise service bus
 
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
WSO2Con2011: Using WSO2 ESB with SAP ERP (Retail)
 
SOA Suite 12c - Service Bus new features summary
SOA Suite 12c - Service Bus new features summarySOA Suite 12c - Service Bus new features summary
SOA Suite 12c - Service Bus new features summary
 
Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)
 
Biztalk ESB Toolkit Introduction
Biztalk ESB Toolkit IntroductionBiztalk ESB Toolkit Introduction
Biztalk ESB Toolkit Introduction
 
Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...
Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...
Windows Azure [R]Evolution - Applications Integration with Azure Service Bus ...
 
WSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep DiveWSO2Con USA 2015: WSO2 Integration Platform Deep Dive
WSO2Con USA 2015: WSO2 Integration Platform Deep Dive
 
Overview of SOA and the role of ESB / OSB
Overview of SOA and the role of ESB / OSBOverview of SOA and the role of ESB / OSB
Overview of SOA and the role of ESB / OSB
 
Enterprise Service Bus and JBI
Enterprise Service Bus and JBIEnterprise Service Bus and JBI
Enterprise Service Bus and JBI
 
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database ProfessionalsIntroducing SOA and Oracle SOA Suite 11g for Database Professionals
Introducing SOA and Oracle SOA Suite 11g for Database Professionals
 
WSO2 ESB - The Backbone of Integration
WSO2 ESB - The Backbone of Integration WSO2 ESB - The Backbone of Integration
WSO2 ESB - The Backbone of Integration
 

Viewers also liked

Viewers also liked (7)

Enterprise service bus part 2
Enterprise service bus part 2Enterprise service bus part 2
Enterprise service bus part 2
 
Career development in exigen services
Career development in exigen servicesCareer development in exigen services
Career development in exigen services
 
Apache cassandra - future without boundaries (part2)
Apache cassandra - future without boundaries (part2)Apache cassandra - future without boundaries (part2)
Apache cassandra - future without boundaries (part2)
 
Apache cassandra - future without boundaries (part3)
Apache cassandra - future without boundaries (part3)Apache cassandra - future without boundaries (part3)
Apache cassandra - future without boundaries (part3)
 
Introduction to selenium web driver
Introduction to selenium web driverIntroduction to selenium web driver
Introduction to selenium web driver
 
Anti patterns part 1
Anti patterns part 1Anti patterns part 1
Anti patterns part 1
 
Conflicts Resolving
Conflicts ResolvingConflicts Resolving
Conflicts Resolving
 

Similar to Enterprise service bus part 1

Enterprise Application to Infrastructure Integration - SDN Apps
Enterprise Application to Infrastructure Integration - SDN AppsEnterprise Application to Infrastructure Integration - SDN Apps
Enterprise Application to Infrastructure Integration - SDN AppsMiftakhZein1
 
DEVNET-1153 Enterprise Application to Infrastructure Integration – SDN Apps
DEVNET-1153	Enterprise Application to Infrastructure Integration – SDN AppsDEVNET-1153	Enterprise Application to Infrastructure Integration – SDN Apps
DEVNET-1153 Enterprise Application to Infrastructure Integration – SDN AppsCisco DevNet
 
Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)stanbridge
 
Functions & technology of bpm and soa tcm62 43040
Functions & technology of bpm and soa tcm62 43040Functions & technology of bpm and soa tcm62 43040
Functions & technology of bpm and soa tcm62 43040Sophia Koukab ☁
 
Microservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applicationsMicroservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applicationsStijn Van Den Enden
 
SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)
SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)
SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)NRB
 
Service mesh in action with onap
Service mesh in action with onapService mesh in action with onap
Service mesh in action with onapHuabing Zhao
 
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2
 
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...WSO2
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecturegulimran
 
API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5Richard Hudson
 
F5 Infosec Israel 2013 Locking the Door in the Clouds
F5 Infosec Israel  2013  Locking the Door in the CloudsF5 Infosec Israel  2013  Locking the Door in the Clouds
F5 Infosec Israel 2013 Locking the Door in the CloudsTzoori Tamam
 
SOA - Unit 1 - Introduction to SOA with Web Services
SOA - Unit   1 - Introduction to SOA with Web ServicesSOA - Unit   1 - Introduction to SOA with Web Services
SOA - Unit 1 - Introduction to SOA with Web Serviceshamsa nandhini
 
Integration with dynamics ax 2012
Integration with dynamics ax 2012Integration with dynamics ax 2012
Integration with dynamics ax 2012Ali Raza Zaidi
 
ISTIO Deep Dive
ISTIO Deep DiveISTIO Deep Dive
ISTIO Deep DiveYong Feng
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticePini Cohen
 
Fusion - IBANK
Fusion - IBANKFusion - IBANK
Fusion - IBANKibankuk
 

Similar to Enterprise service bus part 1 (20)

Microservice Powered Orchestration
Microservice Powered OrchestrationMicroservice Powered Orchestration
Microservice Powered Orchestration
 
Enterprise Application to Infrastructure Integration - SDN Apps
Enterprise Application to Infrastructure Integration - SDN AppsEnterprise Application to Infrastructure Integration - SDN Apps
Enterprise Application to Infrastructure Integration - SDN Apps
 
DEVNET-1153 Enterprise Application to Infrastructure Integration – SDN Apps
DEVNET-1153	Enterprise Application to Infrastructure Integration – SDN AppsDEVNET-1153	Enterprise Application to Infrastructure Integration – SDN Apps
DEVNET-1153 Enterprise Application to Infrastructure Integration – SDN Apps
 
Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)Cs 1023 lec 12 soa (week 4)
Cs 1023 lec 12 soa (week 4)
 
Functions & technology of bpm and soa tcm62 43040
Functions & technology of bpm and soa tcm62 43040Functions & technology of bpm and soa tcm62 43040
Functions & technology of bpm and soa tcm62 43040
 
Microservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applicationsMicroservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applications
 
SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)
SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)
SOA on zLINUX - The Ethias Journey (L. Vauchel & W. Poos)
 
Service mesh in action with onap
Service mesh in action with onapService mesh in action with onap
Service mesh in action with onap
 
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
 
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
WSO2Con USA 2017: Brokerage as a Service (BaaS), Transforming Fidelity Broker...
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5
 
MSB Deep Dive
MSB Deep DiveMSB Deep Dive
MSB Deep Dive
 
F5 Infosec Israel 2013 Locking the Door in the Clouds
F5 Infosec Israel  2013  Locking the Door in the CloudsF5 Infosec Israel  2013  Locking the Door in the Clouds
F5 Infosec Israel 2013 Locking the Door in the Clouds
 
SOA - Unit 1 - Introduction to SOA with Web Services
SOA - Unit   1 - Introduction to SOA with Web ServicesSOA - Unit   1 - Introduction to SOA with Web Services
SOA - Unit 1 - Introduction to SOA with Web Services
 
Integration with dynamics ax 2012
Integration with dynamics ax 2012Integration with dynamics ax 2012
Integration with dynamics ax 2012
 
ISTIO Deep Dive
ISTIO Deep DiveISTIO Deep Dive
ISTIO Deep Dive
 
Soa
SoaSoa
Soa
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And Practice
 
Fusion - IBANK
Fusion - IBANKFusion - IBANK
Fusion - IBANK
 

More from Return on Intelligence

Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!Return on Intelligence
 
Introduction to Backbone.js & Marionette.js
Introduction to Backbone.js & Marionette.jsIntroduction to Backbone.js & Marionette.js
Introduction to Backbone.js & Marionette.jsReturn on Intelligence
 
Types of testing and their classification
Types of testing and their classificationTypes of testing and their classification
Types of testing and their classificationReturn on Intelligence
 
Apache cassandra - future without boundaries (part1)
Apache cassandra - future without boundaries (part1)Apache cassandra - future without boundaries (part1)
Apache cassandra - future without boundaries (part1)Return on Intelligence
 

More from Return on Intelligence (20)

Clean Code Approach
Clean Code ApproachClean Code Approach
Clean Code Approach
 
Code Coverage
Code CoverageCode Coverage
Code Coverage
 
Effective Communication in english
Effective Communication in englishEffective Communication in english
Effective Communication in english
 
Anti-patterns
Anti-patternsAnti-patterns
Anti-patterns
 
Database versioning with liquibase
Database versioning with liquibaseDatabase versioning with liquibase
Database versioning with liquibase
 
Effective Feedback
Effective FeedbackEffective Feedback
Effective Feedback
 
English for Negotiations 2016
English for Negotiations 2016English for Negotiations 2016
English for Negotiations 2016
 
Lean Software Development
Lean Software DevelopmentLean Software Development
Lean Software Development
 
Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!Unit Tests? It is Very Simple and Easy!
Unit Tests? It is Very Simple and Easy!
 
Quick Start to AngularJS
Quick Start to AngularJSQuick Start to AngularJS
Quick Start to AngularJS
 
Introduction to Backbone.js & Marionette.js
Introduction to Backbone.js & Marionette.jsIntroduction to Backbone.js & Marionette.js
Introduction to Backbone.js & Marionette.js
 
Types of testing and their classification
Types of testing and their classificationTypes of testing and their classification
Types of testing and their classification
 
Introduction to EJB
Introduction to EJBIntroduction to EJB
Introduction to EJB
 
Apache cassandra - future without boundaries (part1)
Apache cassandra - future without boundaries (part1)Apache cassandra - future without boundaries (part1)
Apache cassandra - future without boundaries (part1)
 
Apache maven 2. advanced topics
Apache maven 2. advanced topicsApache maven 2. advanced topics
Apache maven 2. advanced topics
 
Apache maven 2 overview
Apache maven 2 overviewApache maven 2 overview
Apache maven 2 overview
 
Jira as a test management tool
Jira as a test management toolJira as a test management tool
Jira as a test management tool
 
Testing your code
Testing your codeTesting your code
Testing your code
 
Quality Principles
Quality PrinciplesQuality Principles
Quality Principles
 
Cross cultural communication
Cross cultural communicationCross cultural communication
Cross cultural communication
 

Recently uploaded

Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 

Recently uploaded (20)

Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 

Enterprise service bus part 1

  • 1. Exigen Services confidential Exigen Services confidential Enterprise Service Bus Evgeny Epifantsev december 2009 updated 2012
  • 2. Exigen Services confidential Trainer contacts • Evgeny Epifantsev • Developer • eepifantsev@exigenservices.com 2
  • 3. Exigen Services confidential Goals • Provide an overview on: • What is Enterprise Service Bus? • How to implement it? 3
  • 4. Exigen Services confidential Agenda • Introduction • EAI evolution: P2P->MOM Hub->ESB • ESB purpose and functions overview • QoS and Policy Enforcement • Components: Mediator VFTER (validate, filter, transform, enrich, route), Choreographer • Example of above topics • Open source ESB 4
  • 5. Exigen Services confidential Part 1: Overview and ESB Concepts
  • 6. Exigen Services confidential Definition 6 ESB is idea of using common integration infrastructure across all enterprise application and systems. An Enterprise Service Bus (ESB) is a new architecture that exploits Web services, messaging middleware, intelligent routing, and transformation. ESBs act as a lightweight, ubiquitous integration backbone through which software services and application components flow."
  • 7. Exigen Services confidential What is ESB? 7 What is ESB? Is a Pattern? Is a Product? Is an Architectural Component? Is a Hardware Component?
  • 8. Exigen Services confidential Evolution 8 Point-to-Point - Tight coupling - Complexity ~N2 - No visibility - Hard to secure Service Bus (ESB) + Scalable + Service-oriented + Flexible - Harder administration + Standards-based + Cost less than EAI bus Enterprise Application Integration Hub: - Scalability + Easy administration Bus: - Standards and proprietary - High cost
  • 9. Exigen Services confidential ESB Architecture context 9 Java/EJB Http Java/EJB HttpService location transparency Sharing service across the enterprise Separate of Business Services from Service implementation
  • 10. Exigen Services confidential ESB as a Pattern of SOA 10 WSDL Business service definition PlaceTrade PlaceTrade saveOrTradeOrder() Java implementation service For saveOrTradeOrder()
  • 11. Exigen Services confidential ESB capabilities 11 Routing Message transformation Message enhancement Security Transaction management Service orchestration Process choreography Message processing Mapping service Protocol transformation
  • 12. Exigen Services confidential ESB basic functions ROUTING messages between services • Addressability, static/deterministic routing • Content-based routing • Policy-based routing • Complex Rule-based routing CONVERTATION •Adapters and protocol conversion •Transport protocols (synchronous and asynchronous) MESSAGING • Message transformation • Message processing • Message enhancement
  • 13. Exigen Services confidential BUS: Protocol Conversion 13 ESB Requests Responses Requests Responses Requests Responses Requests Responses Service Requester Service Provider Phone with wap - WXML/HTTPPhone with wap - WXML/HTTP .NET - SOAP/HTTP.NET - SOAP/HTTP C++ - XML/JMSC++ - XML/JMS SAP - BAPISAP - BAPI WebSphere 5.1 - SOAP/JMSWebSphere 5.1 - SOAP/JMS SAP - BAPISAP - BAPI External partner - SOAP/HTTPSExternal partner - SOAP/HTTPS User application - RMIUser application - RMI Database – SQLDatabase – SQL Application - XML/JMSApplication - XML/JMS
  • 14. Exigen Services confidential Service mapping 14 The ability to translate a business service into the corresponding service implementation and provide binding and location information  Could be implemented through XML, a database, or embedded within the Mediator ESB component  Usually contains the following core information • Implementation service name • Service protocol and binding information • Protocol-specific info (i.e. timeouts) • Service-specific routing information
  • 15. Exigen Services confidential Process choreography 15 The ability to manage complex business process that require the coordination of multiple business services to fulfill a single business service request  Usually BPEL based PlaceFixedIncomeTrade CreateOrder SelectBid PlaceTrade ExecuteTrade Each of business node can be an independent business service
  • 16. Exigen Services confidential Service orchestration 16 The ability to manage the coordination of multiple implementation services  Can be BPEL based but is usually implemented through inter- service communication or aggregate services  Difference between Service orchestration and Process Choreography is based on type of service being coordinated • Process choreography - Business services • Service orchestration - implementation service
  • 17. Exigen Services confidential Transaction management 17 The ability to provide a single unit of work for a business service request by providing a framework for the coordination of multiple disparate services  ESB should provide a compensatory transactional framework for a service request • WS - Coordination • WS - AT • WS –Business Activity
  • 18. Exigen Services confidential Security 18 The ability to protect enterprise services from authorized access  Services visible to the entire enterprise through ESB  The 4 “A’s” of Security •Authentication • Authorization • Auditing • Administration  ESB should provide authentication, authorization and auditing  ESB should access a security manager for authentication and authorization rather than have the direct responsibility
  • 19. Exigen Services confidential Quality of Service and Policy enforcement 19 • Security WS-Security, SAML • Reliable delivery for each connection • Transaction management WS-AT, WS-Coordination, WS-Business Activity • Traffic management • Policy (WS-Policy) R1R1 P1P1 P2P2 Tx_not supported Tx_not supported Tx_requiredTx_required Tx_requiredTx_required CompensationCompensation CompensationCompensation requestor provider 1 2 3 response No answer
  • 21. Exigen Services confidential Common Event Infrastructure 21 Based on Common Base Event (IBM implementation of Web Services Distributed Management ) Common Event Infrastructure (CEI) is IBM's implementation of API, and infrastructure for the creation, transmission, persistence and distribution of a wide range of business, system and network Common Base Event formatted events. CEI Event Submission Interfaces (Event Source) CEI Event Subscription Interfaces (Event Server) CEI Event Query Interfaces (Event Server)
  • 25. Exigen Services confidential ESB components 25  ESB can broken down into the following components • Mediator • Service registry • Choreographer • Rules Engine MediatorMediator Service registry Service registry ChoreographerChoreographer Rules engineRules engine
  • 26. Exigen Services confidential Mediator (Routing, Message transformation) 26 Mediator Requests Responses Requests Responses Requests Responses Requests Responses Service Requester Service ProviderValidation XSD Validation XSD Transform XSLT Transform XSLT Enrich XPath Enrich XPath OperateOperateRoute UDDI Route UDDI VETRO export import
  • 27. Exigen Services confidential Process choreographer 27 BPEL – Business Process Execution language partnerLink purchasing partnerLink purchasing purchaseOrderPTpurchaseOrderPT partnerLink invoicing partnerLink invoicing ComputePricePTComputePricePT invoiceCallbackPTinvoiceCallbackPT <wsdl:portType name="purchaseOrderPT"> <wsdl:operation … </wsdl:operation> </wsdl:portType> <plnk:partnerLinkType name="purchasingLT"> </plnk:partnerLinkType> <plnk:partnerLinkType name="invoicingLT"> <plnk:role portType="pos:computePricePT" /> <plnk:role portType="pos:invoiceCallbackPT“ /> </plnk:partnerLinkType>
  • 28. Exigen Services confidential BPEL Process 28 <sequence> <receive portType="lns:purchaseOrderPT" … /> <flow> <invoke portType="lns:computePricePT“ … /> <receive portType="lns:invoiceCallbackPT" …/> </flow> <reply portType="lns:purchaseOrderPT” … /> <sequence> <sequence> <receive portType="lns:purchaseOrderPT" … /> <flow> <invoke portType="lns:computePricePT“ … /> <receive portType="lns:invoiceCallbackPT" …/> </flow> <reply portType="lns:purchaseOrderPT” … /> <sequence>
  • 29. Exigen Services confidential Implementation Mediation Module 29 Mediation flow Mediation module Requests Responses Requests Responses Requests Responses Requests Responses Service Requester Service Provider Exports Imports Mediation flow component ExportsImports
  • 30. Exigen Services confidential Implementation mediation Flow 30 InterfacesInterfaces Mediation primitivesMediation primitives
  • 32. Exigen Services confidential Implementation steps 32 Import WSDL(SCA, Web Service, HTML, JMS) Import WSDL(SCA, Web Service, HTML, JMS) Create mediatorCreate mediator Connect WSDL ports with mediator (import) Connect WSDL ports with mediator (import) Generate exports with binging (SCA, Web Service, HTML, JMS) Generate exports with binging (SCA, Web Service, HTML, JMS) Messaging ResourcesWebSphere ESB Create bus instanceCreate bus instance Setup SDO repositorySetup SDO repository Setup resource adaptersSetup resource adapters Create client listeners for every protocols Create client listeners for every protocols Create interceptorsCreate interceptors Create mediator (EJB)Create mediator (EJB)
  • 33. Exigen Services confidential ESB platforms 33 Sun GlassFish ESB NetBeans IDE, BPEL orchestration, WS JAX-WS, Business Rules, Transaction, BAM Matrix BusinessWorks no transaction, no dusiness rules, BAM Mule ESB EE custom implementation model, WS CXF, No BAM, no Business rules IONA Fuse ESB Apache ServiceMix, JBI, OSGI, WS CXF, no BAM, Business rules WSO2 ESB Apache Synapse, WS Apache Axis2 WebSphere ESB WebSphere MQ, JMS, BPEL, SCA WS JAX-WS, BAM, Business Rules Oracle ESB JMS, BPEL
  • 34. Exigen Services confidential Open source way 34 ESB Business Rules Business Rules DroolsDrools RoutingRouting eipeip javajava camelcamel ChoreographyChoreographyjBPMjBPM Transform ation Transform ation xpathxpath xsltxslt simplesimple EventsEventsIBMIBM OracleOracle JMSJMS AMQAMQ

Editor's Notes

  1. Основа архитектуры ESB — это идея использования общей интеграционной инфраструктуры всеми корпоративными приложениями на базе обмена сообщениями. Все приложения взаимодействуют через одну точку, которая, в случае необходимости, обеспечивает сохранность обращений, преобразование данных и транзакции. При этом целью интеграции приложения является создание единственного модуля (или адаптера), который отвечает за «подключение» приложения к ESB. Последующую обработку сообщений и их маршрутизацию в другие системы, ESB выполняет на основании установленных бизнес-правил самостоятельно
  2. Ответ ДА на все четыре вопроса.