SlideShare a Scribd company logo
WHERE TO USE THE
ORACLE SERVICE BUS ?
OBUG Connect
24 April 2012 @ MECC Maastricht
Who ?
Jan van Zoggel                 Edwin Biemond
jvzoggel.wordpress.com         biemond.blogspot.com




                         J/E
Agenda
 Overview
 OSB & SOA Suite

 Using the OSB

 Bad Practices




                    E
Enterprise Service Bus
An ESB on its own is not a complete SOA
solution, even though it is often marketed
that way.

Gartner/Burton Group 2007




                     E
How to use the OSB ?




             J
J
Agenda
 Overview
 OSB & SOA Suite

 Using the OSB

 Bad Practices




                    E
Finance domain                                            CRM domain

                     Load balancing
           OSB       Throthling                                    OSB
                     Dyn. Routing
                     SLA / Endpoint
          Mediator                           Mediator
                     intercomposite                            Mediator

BR         BPEL         Mediator      BPEL
                                                                   BPEL

          Mediator                  Mediator
                                                        Mediator          Mediator


           OSB       SB Transports OSB
                                                         OSB               OSB


               BizApi               WS

                  FIN Application                          CRM Application
                                         E
Where to use Mediator ?
   Loosely coupling of Oracle BPEL
   Intra composite
   EDN
   Multi routing
   Specific features:
     MDS   usage
     Domain Value mapping

     Xref (cross referencing ) support

     Synchronous / Asynchronous Routing


                         E
Where to use Oracle BPEL ?
   Stateful
   Long running processes (dehydration store)
   Service Orchestration
   Compensation
   Fault framework
   Business Rules & Human workflow




                         J
Async Service in OSB
   10g BPEL transport
   11g SOA-direct transport




                        E
Agenda
 Overview
 OSB & SOA Suite

 Using the OSB

 Bad Practices




                    E
Using the OSB ?
 High volume*          Caching
 Stateless*            Load balancing

 Security              Endpoint SLA

 Transformation        Transports

 Throttling            Routing




                   J
Security
   Use OWSM for 11g & 12c




                       E
Transformation
   XQuery
   XSLT support
   Java callout support for JSON, JEJB transport




                         E
Control the workload
 Throttling
  Limit requests on Business Service
  Uses memory Queue, no failover
  priority possible




                      J
Control the workload
 Work Managers
  Protect WebLogic Server (Max Threads)




                     J
Caching
   Based on Oracle Coherence
   Protect back-end from heavy load
   Configurable time-to-live
   Uses Cache Token Expression
     e.g. fn:data($body/s01:getEmployee/EmpID)




                        J
Load Balancing
 Multiple load balancing algorithms
 Endpoint management:

   Supports service pooling
   Automatic URI elimination




                     J
Endpoint SLA

                      Alert Rules
                      Overview




               E
Transports
 OSB transports > JCA transports
 Database + AQ use JCA -> JDeveloper

 File JCA reads chunks (large files)

 JEJB transport (java object over the bus)




                     E
Text Processing
   MFL will disappear
   Use Native Format Builder of Oracle SOA Suite
   Use Oracle B2B (part of SOA Suite) for EDI,
    HL7, RosettaNet, etc




                         E
Routing
   Using Dynamic Routing
     Transport type must be the same

     Mediator: dynamic with business rules
      + interface must be the same
   Routing based on message content & headers (
    performance )
     Mediator: only message content




                        J
Enrichment
   Use the Service Callout
     Mediator: almost impossible




                         J
Publish
 Fire-and-Forget messages (1 way)
   Logging / Audit

 Publish to local JMS

   Minimize message loss
   Prevent failure
   Offload with Store-and-Forward




                   E
Validate
 Use Validate action early in proxy (stage)
   Prevent transformation errors
   Prevent invalid information to back-end

 Basic XML schema validation

   No schematron support




                     E
Error handling
 Default the request $body returned (echo)
 Stage, Pipelines, Route & System

 $fault in OSB is no valid SOAP Fault

 Best Practice:

   define Error handling strategy
   define <soap:Fault> mapping




                     J
Agenda
 Overview
 OSB & SOA Suite

 Using the OSB

 Bad Practices




                    E
Bad practice I - Datamodel




        Same WSDL




                    J
Bad practice II - Orchestration




                 E
Bad practice III – execute-SQL

fn-bea:execute-sql($datasrc, $rowElemName, $sql, $param1-n)


•   Officially only retrieve (select), but …
•   Designed for simple lookup (name value pair)
•   Risk: bad SQL fired at database
•   Increasing rows resultset => bad performance




                              E
Bad practice IV – Java galore




                J
Bad practice V – Complexity




              J
Conclusion
An ESB on its own is not a complete SOA
solution, even though it is often marketed
that way.

Gartner/Burton Group 2007




                     E
Questions




            ?
Shameless plug
        The Oracle Service Bus
        Development Cookbook is a book
        which contains more than 80
        practical recipes to develop
        service- and message-oriented
        solutions on the Oracle Service
        Bus 11g.

        OTN + Packt recipes available

More Related Content

What's hot

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
Lucas Jellema
 
ESB Presentation
ESB PresentationESB Presentation
ESB Presentation
F K
 
Enterprise Service Bus Part 1
Enterprise Service Bus Part 1Enterprise Service Bus Part 1
Enterprise Service Bus Part 1
Return on Intelligence
 
Enterprise Service Bus and JBI
Enterprise Service Bus and JBIEnterprise Service Bus and JBI
Enterprise Service Bus and JBI
Thanachart Numnonda
 
ESB Overview
ESB OverviewESB Overview
ESB Overview
Bahaa Farouk
 
Enterprise service bus(esb)
Enterprise service bus(esb)Enterprise service bus(esb)
Enterprise service bus(esb)
prksh89
 
WSO2 ESB and SOA
WSO2 ESB and SOAWSO2 ESB and SOA
WSO2 ESB and SOA
WSO2
 
Oracle OSB Tutorial 2
Oracle OSB Tutorial 2Oracle OSB Tutorial 2
Oracle OSB Tutorial 2
Rakesh Gujjarlapudi
 
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA SuiteFive Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
Guido Schmutz
 
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
Nahser Bakht
 
SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)
Lucas Jellema
 
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Guido Schmutz
 
Enterprise Service Bus
Enterprise Service BusEnterprise Service Bus
Enterprise Service Bus
Return on Intelligence
 
An Unbiased Look: Oracle SOA Suite 12c
An Unbiased Look: Oracle SOA Suite 12cAn Unbiased Look: Oracle SOA Suite 12c
An Unbiased Look: Oracle SOA Suite 12c
Revelation Technologies
 
ESB What it is?
ESB What it is?ESB What it is?
ESB What it is?
Shanmugam Kandaswamy
 
Oracle Event Delivery Network (EDN) of SOA Suite 11g
Oracle Event Delivery Network (EDN) of SOA Suite 11gOracle Event Delivery Network (EDN) of SOA Suite 11g
Oracle Event Delivery Network (EDN) of SOA Suite 11g
Guido Schmutz
 
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
Azilen Technologies Pvt. Ltd.
 
ESB and SOA
ESB and SOAESB and SOA
ESB and SOA
WSO2
 
WebServices and Workflow technologies
WebServices and Workflow technologiesWebServices and Workflow technologies
WebServices and Workflow technologies
Nitin Pande
 
Introduction to Enterprise Service Bus
Introduction to Enterprise Service BusIntroduction to Enterprise Service Bus
Introduction to Enterprise Service Bus
Folio3 Software
 

What's hot (20)

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
 
ESB Presentation
ESB PresentationESB Presentation
ESB Presentation
 
Enterprise Service Bus Part 1
Enterprise Service Bus Part 1Enterprise Service Bus Part 1
Enterprise Service Bus Part 1
 
Enterprise Service Bus and JBI
Enterprise Service Bus and JBIEnterprise Service Bus and JBI
Enterprise Service Bus and JBI
 
ESB Overview
ESB OverviewESB Overview
ESB Overview
 
Enterprise service bus(esb)
Enterprise service bus(esb)Enterprise service bus(esb)
Enterprise service bus(esb)
 
WSO2 ESB and SOA
WSO2 ESB and SOAWSO2 ESB and SOA
WSO2 ESB and SOA
 
Oracle OSB Tutorial 2
Oracle OSB Tutorial 2Oracle OSB Tutorial 2
Oracle OSB Tutorial 2
 
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA SuiteFive Cool Use Cases for the Spring Component in Oracle SOA Suite
Five Cool Use Cases for the Spring Component in Oracle SOA Suite
 
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
 
SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)SOA for PL/SQL Developer (OPP 2010)
SOA for PL/SQL Developer (OPP 2010)
 
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
Oracle SOA Suite 11g Mediator vs. Oracle Service Bus (OSB)
 
Enterprise Service Bus
Enterprise Service BusEnterprise Service Bus
Enterprise Service Bus
 
An Unbiased Look: Oracle SOA Suite 12c
An Unbiased Look: Oracle SOA Suite 12cAn Unbiased Look: Oracle SOA Suite 12c
An Unbiased Look: Oracle SOA Suite 12c
 
ESB What it is?
ESB What it is?ESB What it is?
ESB What it is?
 
Oracle Event Delivery Network (EDN) of SOA Suite 11g
Oracle Event Delivery Network (EDN) of SOA Suite 11gOracle Event Delivery Network (EDN) of SOA Suite 11g
Oracle Event Delivery Network (EDN) of SOA Suite 11g
 
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 and SOA
ESB and SOAESB and SOA
ESB and SOA
 
WebServices and Workflow technologies
WebServices and Workflow technologiesWebServices and Workflow technologies
WebServices and Workflow technologies
 
Introduction to Enterprise Service Bus
Introduction to Enterprise Service BusIntroduction to Enterprise Service Bus
Introduction to Enterprise Service Bus
 

Viewers also liked

Oracle Service Bus 12c (12.2.1) What You Always Wanted to Know
Oracle Service Bus 12c (12.2.1) What You Always Wanted to KnowOracle Service Bus 12c (12.2.1) What You Always Wanted to Know
Oracle Service Bus 12c (12.2.1) What You Always Wanted to Know
Frank Munz
 
Oracle OSB Tutorial 1
Oracle OSB Tutorial 1Oracle OSB Tutorial 1
Oracle OSB Tutorial 1
Rakesh Gujjarlapudi
 
Oracle WorkManager
Oracle WorkManagerOracle WorkManager
Oracle WorkManager
Giampiero Cerroni
 
1 2 osb deep dive
1 2 osb deep dive1 2 osb deep dive
1 2 osb deep dive
Airlangga Putranto
 
Test driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c UpgradeTest driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c Upgrade
Sven Bernhardt
 
Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial
Frank Munz
 
Hands-On with Oracle SOA
Hands-On with Oracle SOAHands-On with Oracle SOA
Hands-On with Oracle SOA
Revelation Technologies
 
Oracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12COracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12C
Rakesh Gujjarlapudi
 
Oracle University - Your Complete Training Source for Oracle Software and Har...
Oracle University - Your Complete Training Source for Oracle Software and Har...Oracle University - Your Complete Training Source for Oracle Software and Har...
Oracle University - Your Complete Training Source for Oracle Software and Har...
ORACLE USER GROUP ESTONIA
 
Oracle SOA Development - Hands-On from Start to Finish
Oracle SOA Development - Hands-On from Start to FinishOracle SOA Development - Hands-On from Start to Finish
Oracle SOA Development - Hands-On from Start to Finish
Revelation Technologies
 
Blogging presentation
Blogging presentationBlogging presentation
Blogging presentation
Traci Van
 
Html5(2)
Html5(2)Html5(2)
Html5(2)
Carol Maughan
 
Horarios industrial mayo agosto 2013
Horarios industrial mayo agosto 2013Horarios industrial mayo agosto 2013
Horarios industrial mayo agosto 2013
betirri11
 
Blogging presentation
Blogging presentationBlogging presentation
Blogging presentation
Traci Van
 
Final Project: The Petter's Show
Final Project: The Petter's ShowFinal Project: The Petter's Show
Final Project: The Petter's Show
lizzyf16
 
Ideate
IdeateIdeate
First conditional
First conditionalFirst conditional
First conditional
Carmen Eugenia Maza Vergara
 
Food
FoodFood
Independent Research Project Data
Independent Research Project DataIndependent Research Project Data
Independent Research Project Data
Jowairia
 
Programa Usos del Temps
Programa Usos del TempsPrograma Usos del Temps
Programa Usos del Tempsfem talent
 

Viewers also liked (20)

Oracle Service Bus 12c (12.2.1) What You Always Wanted to Know
Oracle Service Bus 12c (12.2.1) What You Always Wanted to KnowOracle Service Bus 12c (12.2.1) What You Always Wanted to Know
Oracle Service Bus 12c (12.2.1) What You Always Wanted to Know
 
Oracle OSB Tutorial 1
Oracle OSB Tutorial 1Oracle OSB Tutorial 1
Oracle OSB Tutorial 1
 
Oracle WorkManager
Oracle WorkManagerOracle WorkManager
Oracle WorkManager
 
1 2 osb deep dive
1 2 osb deep dive1 2 osb deep dive
1 2 osb deep dive
 
Test driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c UpgradeTest driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c Upgrade
 
Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial Oracle Service Bus (OSB) for the Busy IT Professonial
Oracle Service Bus (OSB) for the Busy IT Professonial
 
Hands-On with Oracle SOA
Hands-On with Oracle SOAHands-On with Oracle SOA
Hands-On with Oracle SOA
 
Oracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12COracle SOA, BPM, OSB, BAM, & B2B 12C
Oracle SOA, BPM, OSB, BAM, & B2B 12C
 
Oracle University - Your Complete Training Source for Oracle Software and Har...
Oracle University - Your Complete Training Source for Oracle Software and Har...Oracle University - Your Complete Training Source for Oracle Software and Har...
Oracle University - Your Complete Training Source for Oracle Software and Har...
 
Oracle SOA Development - Hands-On from Start to Finish
Oracle SOA Development - Hands-On from Start to FinishOracle SOA Development - Hands-On from Start to Finish
Oracle SOA Development - Hands-On from Start to Finish
 
Blogging presentation
Blogging presentationBlogging presentation
Blogging presentation
 
Html5(2)
Html5(2)Html5(2)
Html5(2)
 
Horarios industrial mayo agosto 2013
Horarios industrial mayo agosto 2013Horarios industrial mayo agosto 2013
Horarios industrial mayo agosto 2013
 
Blogging presentation
Blogging presentationBlogging presentation
Blogging presentation
 
Final Project: The Petter's Show
Final Project: The Petter's ShowFinal Project: The Petter's Show
Final Project: The Petter's Show
 
Ideate
IdeateIdeate
Ideate
 
First conditional
First conditionalFirst conditional
First conditional
 
Food
FoodFood
Food
 
Independent Research Project Data
Independent Research Project DataIndependent Research Project Data
Independent Research Project Data
 
Programa Usos del Temps
Programa Usos del TempsPrograma Usos del Temps
Programa Usos del Temps
 

Similar to Where to use OSB

Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
Jan van Zoggel
 
Java Ide Day 2008 - Presentation on JDeveloper by Paolo Ramasso
Java Ide Day 2008 - Presentation on JDeveloper by Paolo RamassoJava Ide Day 2008 - Presentation on JDeveloper by Paolo Ramasso
Java Ide Day 2008 - Presentation on JDeveloper by Paolo Ramasso
JUG Genova
 
John Davies Last Minute Fill In For Sick Speaker
John Davies Last Minute Fill In For Sick SpeakerJohn Davies Last Minute Fill In For Sick Speaker
John Davies Last Minute Fill In For Sick Speaker
deimos
 
Databases for Storage Engineers
Databases for Storage EngineersDatabases for Storage Engineers
Databases for Storage Engineers
Thomas Kejser
 
Oracle goldengate ogg
Oracle goldengate oggOracle goldengate ogg
Oracle goldengate OGG
Oracle goldengate OGGOracle goldengate OGG
Oracle goldengate OGG
Transfer Solutions
 
Entity Framework
Entity FrameworkEntity Framework
Entity Framework
vrluckyin
 
Entity framework
Entity frameworkEntity framework
Entity framework
icubesystem
 
Weblogic - Data management in application servers
Weblogic - Data management in application serversWeblogic - Data management in application servers
Weblogic - Data management in application servers
Vibrant Technologies & Computers
 
Complex Er[jl]ang Processing with StreamBase
Complex Er[jl]ang Processing with StreamBaseComplex Er[jl]ang Processing with StreamBase
Complex Er[jl]ang Processing with StreamBase
darach
 
Bringing You Up to Date with LE for z/VSE
Bringing You Up to Date with LE for z/VSEBringing You Up to Date with LE for z/VSE
Bringing You Up to Date with LE for z/VSE
IBM India Smarter Computing
 
Maximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure FootprintMaximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure Footprint
WSO2
 
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterWeb Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Tammo van Lessen
 
Exchange Server 2013 Architecture Deep Dive, Part 1
Exchange Server 2013 Architecture Deep Dive, Part 1Exchange Server 2013 Architecture Deep Dive, Part 1
Exchange Server 2013 Architecture Deep Dive, Part 1
Microsoft TechNet - Belgium and Luxembourg
 
Database Performance With Proxy Architectures
Database  Performance With  Proxy  ArchitecturesDatabase  Performance With  Proxy  Architectures
Database Performance With Proxy Architectures
PerconaPerformance
 
Apache Etch Introduction @ FOSDEM 2011
Apache Etch Introduction @ FOSDEM 2011Apache Etch Introduction @ FOSDEM 2011
Apache Etch Introduction @ FOSDEM 2011
grandyho
 
IBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons LearnedIBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons Learned
Ted Leung
 
Integrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdf
Integrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdfIntegrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdf
Integrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdf
MavenWire
 
Hadoop for carrier
Hadoop for carrierHadoop for carrier
Hadoop for carrier
Flytxt
 
Lessons Learnt Implementing High-Performance Integration using SAP PI
Lessons Learnt Implementing High-Performance Integration using SAP PILessons Learnt Implementing High-Performance Integration using SAP PI
Lessons Learnt Implementing High-Performance Integration using SAP PI
Sascha Wenninger
 

Similar to Where to use OSB (20)

Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
 
Java Ide Day 2008 - Presentation on JDeveloper by Paolo Ramasso
Java Ide Day 2008 - Presentation on JDeveloper by Paolo RamassoJava Ide Day 2008 - Presentation on JDeveloper by Paolo Ramasso
Java Ide Day 2008 - Presentation on JDeveloper by Paolo Ramasso
 
John Davies Last Minute Fill In For Sick Speaker
John Davies Last Minute Fill In For Sick SpeakerJohn Davies Last Minute Fill In For Sick Speaker
John Davies Last Minute Fill In For Sick Speaker
 
Databases for Storage Engineers
Databases for Storage EngineersDatabases for Storage Engineers
Databases for Storage Engineers
 
Oracle goldengate ogg
Oracle goldengate oggOracle goldengate ogg
Oracle goldengate ogg
 
Oracle goldengate OGG
Oracle goldengate OGGOracle goldengate OGG
Oracle goldengate OGG
 
Entity Framework
Entity FrameworkEntity Framework
Entity Framework
 
Entity framework
Entity frameworkEntity framework
Entity framework
 
Weblogic - Data management in application servers
Weblogic - Data management in application serversWeblogic - Data management in application servers
Weblogic - Data management in application servers
 
Complex Er[jl]ang Processing with StreamBase
Complex Er[jl]ang Processing with StreamBaseComplex Er[jl]ang Processing with StreamBase
Complex Er[jl]ang Processing with StreamBase
 
Bringing You Up to Date with LE for z/VSE
Bringing You Up to Date with LE for z/VSEBringing You Up to Date with LE for z/VSE
Bringing You Up to Date with LE for z/VSE
 
Maximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure FootprintMaximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure Footprint
 
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterWeb Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
 
Exchange Server 2013 Architecture Deep Dive, Part 1
Exchange Server 2013 Architecture Deep Dive, Part 1Exchange Server 2013 Architecture Deep Dive, Part 1
Exchange Server 2013 Architecture Deep Dive, Part 1
 
Database Performance With Proxy Architectures
Database  Performance With  Proxy  ArchitecturesDatabase  Performance With  Proxy  Architectures
Database Performance With Proxy Architectures
 
Apache Etch Introduction @ FOSDEM 2011
Apache Etch Introduction @ FOSDEM 2011Apache Etch Introduction @ FOSDEM 2011
Apache Etch Introduction @ FOSDEM 2011
 
IBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons LearnedIBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons Learned
 
Integrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdf
Integrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdfIntegrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdf
Integrating EBS And OTM - Process Flows And Avoiding Pitfalls.pdf
 
Hadoop for carrier
Hadoop for carrierHadoop for carrier
Hadoop for carrier
 
Lessons Learnt Implementing High-Performance Integration using SAP PI
Lessons Learnt Implementing High-Performance Integration using SAP PILessons Learnt Implementing High-Performance Integration using SAP PI
Lessons Learnt Implementing High-Performance Integration using SAP PI
 

Recently uploaded

How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
Ajin Abraham
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
BibashShahi
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 

Recently uploaded (20)

How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
Artificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic WarfareArtificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic Warfare
 

Where to use OSB

  • 1. WHERE TO USE THE ORACLE SERVICE BUS ? OBUG Connect 24 April 2012 @ MECC Maastricht
  • 2. Who ? Jan van Zoggel Edwin Biemond jvzoggel.wordpress.com biemond.blogspot.com J/E
  • 3. Agenda  Overview  OSB & SOA Suite  Using the OSB  Bad Practices E
  • 4. Enterprise Service Bus An ESB on its own is not a complete SOA solution, even though it is often marketed that way. Gartner/Burton Group 2007 E
  • 5. How to use the OSB ? J
  • 6. J
  • 7. Agenda  Overview  OSB & SOA Suite  Using the OSB  Bad Practices E
  • 8. Finance domain CRM domain Load balancing OSB Throthling OSB Dyn. Routing SLA / Endpoint Mediator Mediator intercomposite Mediator BR BPEL Mediator BPEL BPEL Mediator Mediator Mediator Mediator OSB SB Transports OSB OSB OSB BizApi WS FIN Application CRM Application E
  • 9. Where to use Mediator ?  Loosely coupling of Oracle BPEL  Intra composite  EDN  Multi routing  Specific features:  MDS usage  Domain Value mapping  Xref (cross referencing ) support  Synchronous / Asynchronous Routing E
  • 10. Where to use Oracle BPEL ?  Stateful  Long running processes (dehydration store)  Service Orchestration  Compensation  Fault framework  Business Rules & Human workflow J
  • 11. Async Service in OSB  10g BPEL transport  11g SOA-direct transport E
  • 12. Agenda  Overview  OSB & SOA Suite  Using the OSB  Bad Practices E
  • 13. Using the OSB ?  High volume*  Caching  Stateless*  Load balancing  Security  Endpoint SLA  Transformation  Transports  Throttling  Routing J
  • 14. Security  Use OWSM for 11g & 12c E
  • 15. Transformation  XQuery  XSLT support  Java callout support for JSON, JEJB transport E
  • 16. Control the workload Throttling  Limit requests on Business Service  Uses memory Queue, no failover  priority possible J
  • 17. Control the workload Work Managers  Protect WebLogic Server (Max Threads) J
  • 18. Caching  Based on Oracle Coherence  Protect back-end from heavy load  Configurable time-to-live  Uses Cache Token Expression  e.g. fn:data($body/s01:getEmployee/EmpID) J
  • 19. Load Balancing  Multiple load balancing algorithms  Endpoint management:  Supports service pooling  Automatic URI elimination J
  • 20. Endpoint SLA  Alert Rules  Overview E
  • 21. Transports  OSB transports > JCA transports  Database + AQ use JCA -> JDeveloper  File JCA reads chunks (large files)  JEJB transport (java object over the bus) E
  • 22. Text Processing  MFL will disappear  Use Native Format Builder of Oracle SOA Suite  Use Oracle B2B (part of SOA Suite) for EDI, HL7, RosettaNet, etc E
  • 23. Routing  Using Dynamic Routing  Transport type must be the same  Mediator: dynamic with business rules + interface must be the same  Routing based on message content & headers ( performance )  Mediator: only message content J
  • 24. Enrichment  Use the Service Callout  Mediator: almost impossible J
  • 25. Publish  Fire-and-Forget messages (1 way)  Logging / Audit  Publish to local JMS  Minimize message loss  Prevent failure  Offload with Store-and-Forward E
  • 26. Validate  Use Validate action early in proxy (stage)  Prevent transformation errors  Prevent invalid information to back-end  Basic XML schema validation  No schematron support E
  • 27. Error handling  Default the request $body returned (echo)  Stage, Pipelines, Route & System  $fault in OSB is no valid SOAP Fault  Best Practice:  define Error handling strategy  define <soap:Fault> mapping J
  • 28. Agenda  Overview  OSB & SOA Suite  Using the OSB  Bad Practices E
  • 29. Bad practice I - Datamodel Same WSDL J
  • 30. Bad practice II - Orchestration E
  • 31. Bad practice III – execute-SQL fn-bea:execute-sql($datasrc, $rowElemName, $sql, $param1-n) • Officially only retrieve (select), but … • Designed for simple lookup (name value pair) • Risk: bad SQL fired at database • Increasing rows resultset => bad performance E
  • 32. Bad practice IV – Java galore J
  • 33. Bad practice V – Complexity J
  • 34. Conclusion An ESB on its own is not a complete SOA solution, even though it is often marketed that way. Gartner/Burton Group 2007 E
  • 36. Shameless plug The Oracle Service Bus Development Cookbook is a book which contains more than 80 practical recipes to develop service- and message-oriented solutions on the Oracle Service Bus 11g. OTN + Packt recipes available

Editor's Notes

  1. Vondikwelmooie quote, hebdat Gartner/Burton artikeloverigensdigitaalGrotergemaakt
  2. Integration patternDavid Chapell (2004)
  3. http://docs.oracle.com/cd/E14571_01/doc.1111/e15866/soa.htm
  4. http://docs.oracle.com/cd/E16764_01/integration.1111/e10223/09_policy_mgr.htm
  5. https://blogs.oracle.com/knutvatsendvik/entry/throttling_in_osbhttp://weblogic-wonders.com/weblogic/2010/11/21/understanding-the-work-managers/If you don’t explicitly define your Dispatch Policy on your JMS Proxy, then it will run in the default thread pool with everything else. This may be fine in some cases, but for services that require a short SLA, then allocating a dedicated Work Manager is probably a good idea.
  6. https://blogs.oracle.com/knutvatsendvik/entry/throttling_in_osbhttp://weblogic-wonders.com/weblogic/2010/11/21/understanding-the-work-managers/If you don’t explicitly define your Dispatch Policy on your JMS Proxy, then it will run in the default thread pool with everything else. This may be fine in some cases, but for services that require a short SLA, then allocating a dedicated Work Manager is probably a good idea.
  7. http://www.orafmwschool.com/oracle-service-bus-routing-and-transformation/
  8. https://blogs.oracle.com/christomkins/entry/load_balancing_in_aqualogic_se
  9. http://biemond.blogspot.com/2011/05/osb-endpoint-monitoring-and-sla-alert.html
  10. http://www.orafmwschool.com/oracle-service-bus-routing-and-transformation/
  11. Visio: ServiceCallout en getCustomerDetails call (GOOD)
  12. Visio: ServiceCallout en getCustomerDetails call (GOOD)
  13. STORY: protect OSB (support team) for invalid date errorshttp://gibaholms.wordpress.com/2011/10/31/advanced-validation-in-oracle-service-bus-11g/
  14. http://jvzoggel.wordpress.com/2011/07/28/custom-soap-faults-osb/
  15. Uses CDM from backend in BS and PS, result all clients use proprietary datamodel. After application upgrade/change all consumers need to update.
  16. ServiceCallout with multiple Update/Write actions on non reliable protocol (HTTP),ERROR: what if 3rd SC fails
  17. Using work-around you can insert data as wellcomplex SQL statements in Xqueryvs DB-adapter with tight DB coupling and small change Jdev/Eclipse WSDL export/importSmall select BEA function, large rowcount becomes very slowLast remark not necessary, but strange behaviour select * from customer -&gt; becomes CUSTOMER
  18. ZwareJavaCallout met extreemveelmemoryload (jijidee?)
  19. Adding to much logic in the service (route tables, dynamic publish, if-then-else)
  20. Vondikwelmooie quote, hebdat Gartner/Burton artikeloverigensdigitaalGrotergemaakt