Title: BP2120: Introduction to the ESB Integration Made Easy
1BP2120Introduction to the ESB Integration
Made Easy
- Paul Moxon(pmoxon_at_sonicsoftware.com)
- Senior Director, Product Management
2Speaker Background
- Senior Director of Product Management at Sonic
Software - Responsible for Sonics Integration Suite
- Former VP Product Management at IONA Technologies
- Responsible for IONAs CORBA and J2EE products
- Almost 20 years industry experience
- 10 years in integrating distributed systems
- Telecoms, Oil and Gas industry, etc.
- Variety of roles, including developer,
development manager, consultant, and product
management
3Objectives
- Explain the necessity for integration
- Why if affects IT departments and application
vendors - What is an enterprise service bus?
- What are its key features?
- How to integrate applications using the Sonic ESB
- An overview of the Sonic Business Integration
Suite products
4Shameless Plug 1
- BP2230 Sonic ESB Technical Use Cases
- By Matt Rothera
- Practice Manager, Sonic PSO
- 1015 am Wednesday, 16th April
- Provincetown Room
- Matt will provide various detailed use cases for
the enterprise service bus - A chance to see how people are using the ESB in
real world systems
5Agenda
- Why Integration is Important
- What Is The ESB?
- Integration with Sonic ESB
- Sonic ESB v5.0
- Sonic Business Integration Suite
6Business Drivers for Integration
7Pressure on IT
Do morewith lessand do it quicker
- Business drivers heating up
- Improve efficiencies, reduce costs
- Integrate with partners, other LOBs
- Reduce redundant services
- IT being asked to perform miracles
- Do more
- with less
- and do it quicker!
- This affects their buying behavior
8Changes in IT Buying Behavior
Integration is become a requirement
- IT realize that integration is one of their
biggest costs - 1 concern for IT management
- Pushing the burden on to application vendors
- Built-for-Integration is becoming a requirement
- Application vendors need to provide
standards-based integration capabilities - Also be able embrace emerging technologies and
standards
9Which Standard?
XQuery
ebXML
SNMP
SSL
WS-Security
POP3
Web Services
UML
JCA
WS-Reliability
JMS
UDDI
HTTP/S
JAAS
SMTP
J2EE
WS-Transactions
.NET
X.509
COM
PKI
XML
WSDL
WS-Policy
SOAP
BPEL4WS
LDAP
CORBA
XSLT
10Integration Infrastructure
The need for a flexible, reliable infrastructure
- Integration infrastructures need to support
change - New applications, new technologies
- Increasing load and performance
- Must be reliable and secure
- Must provide core integration functionality
- Data routing
- Data transformation
- System management
11Service-Oriented Architectures
Flexible, Extensible Integration
- Service-oriented architectures (SOA) represent
next wave of integration and application
architectures - Advent of Web services is an accelerator
- Applications expose functionality through service
interfaces - Services are described in a common manner
- Services are addressed by logical names
12Service-Oriented Architecture
Service Interface Characteristics
- Loosely-Coupled Services
- Abstracted implementation and invocation
- Independent of signatures, methods, procedures
- Resilient to implementation changes
- Platform and language neutral
- Asynchronous
- No application is a single point of failure
- Response is decoupled from the request
- Store and forward for reliability
- Coarse-Grained
- Business-level interfaces
- Standards-based
- Today and tomorrow
Service Examples Internal Order Entry Partner
Inventory Check 3rd Party Credit Check
13Enterprise Service Bus
SOA in action
Packaged App
.NETApplication
J2EEApplication
Enterprise Service Bus
Partner System
Web service
14Enterprise Service Bus
SOA in action
- Reliably and securely connects services across
the enterprise - Intelligently routes transactions between systems
- Transforms business data between applications
- Resilient to change via native XML support
- Unified management and monitoring of entire
system - Suitable for individuals projects, but can scale
on a global basis - Directly supports incremental move to
service-oriented architectures
15Agenda
- Why Integration is Important
- What Is The ESB?
- Integration with Sonic ESB
- Sonic ESB v5.0
- Sonic Business Integration Suite
16What is an Enterprise Service Bus?
Gartners Definition
17Enterprise Service Bus
Key Features of an ESB
- Service-oriented architecture
- Enterprise-grade communications backbone
- Standards-based connectivity
- Intelligent routing
- Data transformation
- Deployment flexibility and distributed management
- Multiple on ramps
18Service Oriented Architecture
Validating the ESB approach
- Service-oriented architectures, leveraging
messaging and Web services, are key to meeting
complicated system integration needs - Adam Bosworth, Chief Architect, BEA
Systems
19Communication Backbone
Enterprise-class messaging
- An ESB is built on asynchronous messaging
- More resilient and reliable architecture
- Resilient to change
- Store-and-forward for guaranteed delivery
- Proven scalability
- Messaging infrastructure hides complexity
- Developers dont need to worry about how to find
and connect to another service - SonicMQ provides messaging infrastructure
- Proven, scalable, and reliable
20Standards-based Connectivity
Web services and more
- Web services are the integration standard of the
future - An ESB must support Web services
- But not all applications support Web services
today - An ESB must support other standards
- J2EE e.g. JCA connectors, EJB message driven
beans (MDB) - Microsoft .NET e.g. C clients, VB.NET clients
21Intelligent Routing
Moving data through the ESB
- Route messages and data to where it is needed
- Configurable routing rules not programmatic
- Routing rules based on
- Message headers (JMS, SOAP, HTTP, etc.)
- Message type
- Message contents e.g. XPath expressions
- Routing rules need to be extensible
- Access external systems to evaluate rules
22Data Transformation
Subtitle
- Data needs to be transformed as it flows between
services and applications - Different data models in different applications
- E.g.
- ESB canonical data format is XML
- ESB must provide XML-XML transformation
capabilities - XSLT (and XQuery) support
Address Line 1 Street Address Address Line
2 City/Town City County State Postcode Zip
23Distributed Management
Controlling your Integration Infrastructure
- A lot of integrated systems are geographically
dispersed - E.g. manufacturing plants in Illinois, Germany,
and Malaysia, Head Office in Colorado - Need to manage and monitor an integrated system
- System administration business monitoring
- An ESB must have a distributed management
framework - Management everything from any point on ESB
- Integrate into existing system administration
tools - E.g. Tivoli, CA Unicenter, HP Openview
- Use management standards SNMP, JMX
24Multiple On Ramps
Talking to the non-ESB World
- Not all applications are standards-based
- Many have proprietary APIs or use proprietary
technologies - They still need to be integrated
- An ESB cant connect natively to these
applications - They dont use XML, for example
- An ESB must support other technologies
- E.g. Adapters for legacy systems such as CICS,
IDMS, Adabas, etc.
25Enterprise Service Bus
Key Features of an ESB
- Service-oriented architecture
- Enterprise-grade communications backbone
- Standards-based connectivity
- Intelligent routing
- Data transformation
- Deployment flexibility and distributed management
- Multiple on ramps
26Enterprise Service Bus In Action
Legacy Mainframe System
Partner Service
J2EEApplication
.NETApplication
Broker
3rd Party Service
SonicXQ Enterprise Service Bus
J2EEApplication
Service Container
Broker
Broker
Broker
Transformation Service
27Agenda
- Why Integration is Important
- What Is The ESB?
- Integration with Sonic ESB
- Sonic ESB v5.0
- Sonic Business Integration Suite
287 Steps for ESB Integration
- Plan the data flows between systems
- Define the service interfaces
- Define the data transformations
- Define the routing rules
- Create the ESB service implementations
- Define the message queues
- Configure and deploy the services
29Step 1 Plan the Data Flows
Buyer
2
1
5
4
6
8
3
7
- Plan the data flows between systems
- What data is needed by each application?
- Where does it come from?
- What format is it in or need to be in?
Credit Bureau
30Step 2 Define Service Interfaces
Buyer
- Define the service interfaces
- Define the service functionality e.g. Credit
Check - What data is needed and what is returned?
- Always think about coarse-grained interfaces
Credit Bureau
31Step 3 Define Data Transformations
Buyer
- Define the data transformations
- Based on the data flows and the service
interfaces, map the incoming data to that needed
by the service
Credit Bureau
32Step 4 Define Routing Rules
Buyer
If value gt 2,500 then Manual Approval Else
Automatic Approval End
If credit FALSE then Reject Order End
- Define the routing rules
- What conditions change the data flow?
- Do I need to enforce business rules?
Credit Bureau
33Step 5 Implement ESB Services
Buyer
public void service(com.sonicsw.xq.XQServiceConte
xt ctx) throws XQServiceException
if (ctx null) throw new
XQServiceException( "Service Context cannot be
null.") com.sonicsw.xq.XQEnvelope env
null while (ctx.hasNextIncoming())
env ctx.getNextIncoming()
if (env ! null)
XQMessage msg env.getMessage()
FaultMessage fault null
CustomerOrder order null
try order
new CustomerOrder(msg) int
quantity order.getQuantity()
- Create the ESB service implementations
- Create the functional code for the ESB service
- Wrap non-ESB applications with ESB services
- This is the only coding part!
Credit Bureau
34Step 6 Define the Message Queues
Q
Q
Q
Q
Q
- Define the message queues
- Create the message queues to be used by the
services - Configure the queue properties
35Step 7 Deploy the Services
Buyer
- Define the deployment parameters
- Define initialization and runtime parameters for
the services - Configure the service endpoints (queues)
Credit Bureau
367 Steps for ESB Integration
- Plan the data flows between systems
- Define the service interfaces
- Define the data transformations
- Define the routing rules
- Create the ESB service implementations
- Define the message queues
- Configure and deploy the services
37ESB Service Implementations
- ESB Services deployed in a Service Container
- Similar to a Servlet Container
- Hides a lot of complexity and simplifies the job
of creating ESB services - Service Container handles
- Service lifecycle (startup, shutdown, etc.)
- Connections to communications backbone
- Thread management
- Transaction management
- Service utility functions
38Sonic ESB XQService Class
- XQService class provides framework for ESB
services - Three key methods
- init( )
- Initializes the service e.g. creates connections
to database - service( )
- Called when a message is sent to the service
- Can access message data and runtime parameters
- destroy( )
- Performs cleanup when service is shutdown
39Agenda
- Why Integration is Important
- What Is The ESB?
- Integration with Sonic ESB
- Sonic ESB v5.0
- Sonic Business Integration Suite
40Shameless Plug 2 Sonic ESB v5.0
Raising the bar for ESBs
- Targeted for release end of April, 2003
- Built on top of SonicMQ v5.0 Messaging
Infrastructure - Enhanced Distributed Management Framework
- JMX-based management infrastructure
- High availability and scalability
- Load balancing across services resilience in
case of partial system failure - Pluggable security
- Integrate across security domains
- Integration with Stylus Studio XML IDE
41Shameless Plug 3 (the last one)
Raising the bar for ESBs
- Sonic Software booth in Expo Hall
- Pre-release evaluation CDs of Sonic ESB v5.0 are
available - You just need to ask
42Agenda
- Why Integration is Important
- What Is The ESB?
- Integration with Sonic ESB
- Sonic ESB v5.0
- Sonic Business Integration Suite
43Beyond the ESB
Building on the foundations
- ESB also provides perfect foundation for advanced
integration functionality - Business Acceleration
- Business Process Modeling
- Operational Awareness
- Business Activity Monitoring
- Business Event Management
44Advanced Integration Functionality
Layered on the ESB
45Shameless Plug 4 (I lied!)
Sonic Business Integration Suite
46Suite Components
Leveraging the power of the ESB
- Sonic ESB
- Sonic Orchestration Server
- Builds on intelligent routing in Sonic ESB
- Sophisticated business process management for
ESB-based systems - Sonic XML Server
- Scalable, and optimized XML storage, query,
transformation and processing services - Auditing, logging, data staging and aggregation,
business event capture and monitoring
47Suite Components (Contd)
Leveraging the power of the ESB
- Sonic Integration Studio
- Comprehensive development workbench for ESB
integration projects - Includes development licenses for Sonic ESB,
Orchestration Server, and XML Server - Adapters for Sonic ESB
- Enable service-based interactions with over 200
applications including - Prepackaged applications (e.g. SAP and
PeopleSoft), B2B systems (e.g. EDI, SWIFT, HIPAA,
etc.), mainframe applications and legacy data
systems
48Availability
- Sonic ESB v5.0 28th April
- Sonic Orchestration Server Q3, 2003
- Sonic XML Server Q3, 2003
- Sonic Integration Studio Q3, 2003
- Adapters for Sonic ESB Now
49!
Allquestionsanswered