SlideShare a Scribd company logo
1 of 18
Oracle Service Bus – Lesson 2
Name – Rakesh Gujjarlapudi

Email Address – rakesh_gujj@yahoo.com


Scaling Integration Infrastructure with Oracle Service Bus


Oracle Service Bus - End Point Management & Service Result Caching

      Multiple endpoints, Oracle Service Bus can guarantee service availability even if one endpoint is offline.
       This is an infrastructure resiliency proof point.
      Load balance service requests across endpoints according to a variety of algorithms. For example, if one
       service endpoint were more expensive to use, a weighted message dispatching algorithm can be
       configured to favor the less expensive service, while still guaranteeing message routing to all available
       endpoints.
      Dynamically adjusting message routing across multiple endpoints in the event that one or more are
       unavailable. OSB automatically checks offline service endpoints for their availability, and adds them
       back into the active service endpoint pool when they are back online
Introduction
Business continues to grow rapidly. Failure of a service causes transactions processing failures.

Issues
1. The current Credit Service Validation Service Provider cannot handle the load.
2. Due to the failures, checking status of the PO orders causing unnecessary load and spikes on infrastructure.

OSB will help scale integration infrastructure through Endpoint Management and Service Result Caching.

Endpoint Management
       Provide additional capacity for increased load of the service requests
       Contract to multiple Credit Card Payment Vendors to ensure high quality of service for POProcessing
        thus insulating customers from any disruptions of services caused by backend Service Providers.

Advantage – Since the service is allready virtualized on Oracle Service Bus, we can make updates quickly and
easily without impacting Service Consumers or the backend Application Developers of the POProcessing service
(Service Provider).

In this lesson we will bring on-line another credit validation vendor leveraging the advanced Endpoint
Management features of Oracle Service Bus.

Before Endpoint Management – Single Endpoint.




After Endpoint Management – Multiple Endpoints add Agility and Scale
Key Takeaway: Changes are made without any impact to Service Consumers or Providers.

Oracle Service Bus helps insulate service consumers and service providers from these types of changes, allowing
business to be more agile, robust and adaptable. Changes are made without any impact to Service Consumers or
Providers.

What is being done?

During this section you will perform the following steps.

You will start by re-configuring the validationForCC Business Service to have multiple endpoints. The Business
Service will now load-balance across the two service providers: the original endpoint and new provider endpoint
just added.

You will test and Monitor endpoint utilization from the OSB Monitoring console by invoking ValidateCredit
proxy service several times from OSB Test console.

High Level Steps

       Add endpoint http://<IP ADDRESS>:7001/Credit_Services/ProxyServices/ValidateCredit to the
        validationForCC business service.
       Set the load balancing algorithm to round-robin.
       Test the ValidateCredit proxy service multiple times to distribute service requests across both service
        endpoints.
       Validate message distribution to multiple endpoints through the OSB Operations console.

Steps in detail

Add the New Credit Card Validation Service Endpoint

Login to the Service Bus console (http://localhost:7001/sbconsole) username weblogic, password welcome1.

Create a session by clicking the Create button in the Change Center.




Use the Project Explorer navigate to the BusinessServices folder of the Credit Services project.




To access the configuration for business service validationForCC, click on it’s name.
Notice that there is a single service endpoint defined.




We are going to add a 2nd service endpoint and we have been provided the service url.
http://<IP- ADDRESS>:7001/Credit_Services/ProxyServices/ValidateCredit.
To start the process of adding a 2nd service endpoint, click the edit icon in the Transport Configuration header
bar.




This screen appears.




Copy the new url and put it in the url field next to the Add button.




Click the Add button to add the 2nd url to the list of available endpoints. There should now be 2 urls in the
endpoint table.




Ensure the endpoint load balancing algorithm is set to round-robin.
There are no more configuration actions to take. Click the Last button then scroll to the bottom of the page and
click the Save button.
Ensure that proxy service ValidateCredit is configured with Monitoring enabled, with an Aggregation Interval of
at least 25 minutes.




Activate Session
Activate the Session by clicking on Activate in Change Center




Add optional Description and click Submit
Test

In order to test the changes find the ValidateCredit proxy service by navigating to Resource Browser
followed by Proxy Services. Next, launch the test console by clicking on the    icon under Actions.




In the test console, replace the CCNumber value with 1234-1234-1234-1234 and click Execute.




You should see the following response.




Click the Back button and run the test a few more times.
Navigate to Operations.




Click on the Service Health tab.




Towards the bottom of the page services are listed.




Click on the validationForCC business service to view the aggregate service metrics. Take a minute to browse the
metrics page and get familiar with the available data.

To view metrics per endpoint click on the Endpoint URI’s tab.




Notice that the service requests are distributed across the two endpoints.
Service Result Caching
LabB

Problem: Because of the Service Failure issues, IT keeps repetitively checking Purchase Order status causing
unnecessary load and spikes on IT’s infrastructure.

Implement the Solution

IT will leverage OSB’s Service Result Cache to normalize the spikes for repetitive service calls. By caching the
results of repetitive service calls, Oracle Service Bus can help scale and protect backend systems, avoiding
outages caused by spikes enabling predictable scalability. The backend service can even temporarily go down
yet cached results can still be returned (within a predefined time window) to ensure no loss in availability.




What is being done?

During this section you will perform the following steps.

Configure Service Result Caching on the GetPO Business Service, which retrieves the Purchase Order given the
ID of the Purchase Order. Enabling Result Caching will cache the Purchase Order in the Coherence Cache

Test Service Result Caching functionality by invoking the GetPO Proxy Service, which Routes to the GetPO
Business Service. First request for a Purchase Order will take 5 seconds, while the following requests (performed
before the cache entry is expires from the Coherence Cache) will be much faster as the Purchase Order is served
from the Coherence cache.

High Level Steps

       Import starting-caching.jar into OSB
       (Optional) Test to see that every request to the GetPO Proxy Service takes about 5 seconds as Service
        Result caching is not enabled on the GetPO Business Service to which the GetPO Proxy Service Routes.
        For simplicity, the GetPO Business Service invokes the POStatus/TestServices/POProvider test service on
OSB that waits for 5 seconds before responding with a Purchase Order. In reality, this service can exist
        any where.
       Configure Service Result Caching on GetPO Business Service
       Cache Token Expression – $body/po:PO_ID
       Expiration Time – 1 minute
       Update GetPO Proxy Service to propagate cache-originated and cache-token response metadata (from
        the GetPO Business Service) as SOAP Headers. cache-originated and cache-token are available in the
        Proxy Service at $outbound/ctx:transport/ctx:response/tp:cache- originated and
        $outbound/ctx:transport/ctx:response/tp:cache-token respectively.
       Test to see that first request to the GetPO Proxy Service takes about 5 seconds. However, following
        requests for the same Purchase Order (same PO_ID) if made within 1 minute (Expiration Time) of the
        first request is much faster than 5 seconds as the Purchase Order is retrieved from the Coherence
        Cache. The request will take 5 seconds once the cache entry expires.

Steps in Detail

Create Session




Navigate to System Administration




In Import Resources, Click Browse




Select starting-caching.jar

Click Next

Click Import

Click Activate
Click Submit

Create Session

Click Resource Browser




Select Business Services




Edit GetPO Business Service by clicking the service name
Click      on the Message Handling Configuration section to edit Result Caching. Note that currently Result
Caching is set to Not Supported.




Expand Advanced Settings by clicking




Check Result Caching to Supported to enable rest of the Result Caching configuration




Setup Result Caching configuration. The Cache Token Expression evaluates to the cache token part of the cache
key used to cache the entry in Coherence Cache. The Expiration Time evaluates to the Time To Live for the cache
entry.

Cache Token Expression: $body/po:PO_ID

Expiration Time: 1 min
Click Next

Click Save (Do not miss this step)




Next, Edit the Message Flow of POStatus/ProxyServices/GetPO to propagate cache-originated and cache-token
response metadata as SOAP Headers

From the Project Explorer, select POStatus/ProxyServices
Click for    GetPO Proxy Service to edit the Message Flow




Add Pipeline Pair by clicking GetPO and selecting Add Pipeline Pair




Add Stage to Response Pipeline




Edit Stage
Add a Replace action – Click Add an Action and Select Message Processing->Replace




Edit Replace action

Variable: header

Expression: Click <Expression>, Add the following XML in the text area and Click Save

<caching-metadata>
<cache-originated>{$outbound/ctx:transport/ctx:response/tp:cache- originated/text()}</cache-originated>
<cache-token>{$outbound/ctx:transport/ctx:response/tp:cache- token/text()}</cache-token>
</caching-metadata>

Select Replace node contents
Click Save All

Click Activate




Click Save All

Click Submit

You are done with

Configuring the GetPO Business Service for Result Caching and

Updating the GetPO Proxy Service to insert the cache-originated and cache-token response metadata
(from the outbound) into the SOAP Headers (on the inbound)

Test

Select Project Explorer and expand POStatus/ProxyServices




Click     for GetPO Proxy Service to test
Specify PO_ID as 2222 and click Execute




You will notice that it will take about 5 seconds to return with the PurchaseOrder response. This is because the
PO service, invoked by the GetPO Business Service, is mimicked by POStatus/TestServices/POProvider proxy
service which has a Java callout that waits for 5 seconds before returning with the Purchase Order. You will see
the following response which indicates the response was not retrieved from the cache (cache-originated=false).
You will also see the cache-token that was used to add the entry to the Coherence cache (cache-token=2222)
Immediately within 1 minute of the first request make another request with the same, 2222, PO_ID. Click Back
and Click Execute to perform this step
You will now see the following response. This response has cache-originated=true, which implies the
Purchase Order came from the Coherence Cache. The header also has cache-token=2222, which is the
PO_ID.




If you repeat the test again after the cache entry expires (more than 1 minute after the first request)
you will see the same response as in previous step. The response comes from the backend (instead of the cache)
and the response is cached using the specified cache-token.

More Related Content

What's hot

Integrating with SAP FIX and HL7
Integrating with SAP FIX and HL7Integrating with SAP FIX and HL7
Integrating with SAP FIX and HL7WSO2
 
10135 a 04
10135 a 0410135 a 04
10135 a 04Bố Su
 
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
 
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
 
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 SuiteGuido Schmutz
 
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
 
Microsoft exchange-server-2013-installation
Microsoft exchange-server-2013-installationMicrosoft exchange-server-2013-installation
Microsoft exchange-server-2013-installationtakdirlovely09
 
ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...Nancy Thomas
 
Websphere interview Questions
Websphere interview QuestionsWebsphere interview Questions
Websphere interview Questionsgummadi1
 
Websphere Application Server V8.5
Websphere Application Server V8.5Websphere Application Server V8.5
Websphere Application Server V8.5IBM WebSphereIndia
 
IBM websphere application server types of profiles
IBM websphere application server types of profilesIBM websphere application server types of profiles
IBM websphere application server types of profilesKuldeep Saxena
 
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 FootprintWSO2
 
IBM Websphere concepts
IBM Websphere conceptsIBM Websphere concepts
IBM Websphere conceptsKuldeep Saxena
 
New Exchange Server 2013 Architecture
New Exchange Server 2013 ArchitectureNew Exchange Server 2013 Architecture
New Exchange Server 2013 ArchitectureKhalid Al-Ghamdi
 
WAS vs JBoss, WebLogic, Tomcat (year 2015)
WAS vs JBoss, WebLogic, Tomcat (year 2015)WAS vs JBoss, WebLogic, Tomcat (year 2015)
WAS vs JBoss, WebLogic, Tomcat (year 2015)Roman Kharkovski
 
Introduction and Advanced Concepts of BPEL
Introduction and Advanced Concepts of BPELIntroduction and Advanced Concepts of BPEL
Introduction and Advanced Concepts of BPELDenis Weerasiri
 

What's hot (18)

Integrating with SAP FIX and HL7
Integrating with SAP FIX and HL7Integrating with SAP FIX and HL7
Integrating with SAP FIX and HL7
 
10135 a 04
10135 a 0410135 a 04
10135 a 04
 
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)
 
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)
 
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
 
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
 
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
 
Microsoft exchange-server-2013-installation
Microsoft exchange-server-2013-installationMicrosoft exchange-server-2013-installation
Microsoft exchange-server-2013-installation
 
ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...ibm websphere admin training | websphere admin course | ibm websphere adminis...
ibm websphere admin training | websphere admin course | ibm websphere adminis...
 
Websphere interview Questions
Websphere interview QuestionsWebsphere interview Questions
Websphere interview Questions
 
Websphere Application Server V8.5
Websphere Application Server V8.5Websphere Application Server V8.5
Websphere Application Server V8.5
 
IBM websphere application server types of profiles
IBM websphere application server types of profilesIBM websphere application server types of profiles
IBM websphere application server types of profiles
 
1 2 osb deep dive
1 2 osb deep dive1 2 osb deep dive
1 2 osb deep dive
 
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
 
IBM Websphere concepts
IBM Websphere conceptsIBM Websphere concepts
IBM Websphere concepts
 
New Exchange Server 2013 Architecture
New Exchange Server 2013 ArchitectureNew Exchange Server 2013 Architecture
New Exchange Server 2013 Architecture
 
WAS vs JBoss, WebLogic, Tomcat (year 2015)
WAS vs JBoss, WebLogic, Tomcat (year 2015)WAS vs JBoss, WebLogic, Tomcat (year 2015)
WAS vs JBoss, WebLogic, Tomcat (year 2015)
 
Introduction and Advanced Concepts of BPEL
Introduction and Advanced Concepts of BPELIntroduction and Advanced Concepts of BPEL
Introduction and Advanced Concepts of BPEL
 

Viewers also liked

Lesson1 - SOA Governance Overview
Lesson1  - SOA Governance OverviewLesson1  - SOA Governance Overview
Lesson1 - SOA Governance OverviewRakesh Gujjarlapudi
 
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 12CRakesh Gujjarlapudi
 
Enterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cEnterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cRakesh Gujjarlapudi
 
Oracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPSOracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPSRakesh Gujjarlapudi
 
Oracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning TutorialOracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning TutorialRakesh Gujjarlapudi
 
Oracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSMOracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSMRakesh Gujjarlapudi
 
SOA OSB suite cluster installation
SOA OSB suite cluster installationSOA OSB suite cluster installation
SOA OSB suite cluster installationRakesh Gujjarlapudi
 
Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1Rakesh Gujjarlapudi
 
Apache camel overview dec 2011
Apache camel overview dec 2011Apache camel overview dec 2011
Apache camel overview dec 2011Marcelo Jabali
 

Viewers also liked (20)

Oracle OSB Tutorial 1
Oracle OSB Tutorial 1Oracle OSB Tutorial 1
Oracle OSB Tutorial 1
 
Osb student guide
Osb student guideOsb student guide
Osb student guide
 
Lesson1 - SOA Governance Overview
Lesson1  - SOA Governance OverviewLesson1  - SOA Governance Overview
Lesson1 - SOA Governance Overview
 
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
 
Enterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12cEnterprise managerclodcontrolinstallconfiguration emc12c
Enterprise managerclodcontrolinstallconfiguration emc12c
 
Oracle BPM 11g Lesson 2
Oracle BPM 11g Lesson 2Oracle BPM 11g Lesson 2
Oracle BPM 11g Lesson 2
 
Oracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPSOracle WebLogic Server 11g for IT OPS
Oracle WebLogic Server 11g for IT OPS
 
Oracle WebLogic 11g Topology
Oracle WebLogic 11g TopologyOracle WebLogic 11g Topology
Oracle WebLogic 11g Topology
 
Oracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning TutorialOracle ADF 11g Skinning Tutorial
Oracle ADF 11g Skinning Tutorial
 
Oracle BPM 11g Lesson 1
Oracle BPM 11g Lesson 1Oracle BPM 11g Lesson 1
Oracle BPM 11g Lesson 1
 
Oracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSMOracle OSB Security Enforcement with OWSM
Oracle OSB Security Enforcement with OWSM
 
SOA OSB suite cluster installation
SOA OSB suite cluster installationSOA OSB suite cluster installation
SOA OSB suite cluster installation
 
Oracle EMC 12C Grand Tour
Oracle EMC 12C Grand TourOracle EMC 12C Grand Tour
Oracle EMC 12C Grand Tour
 
Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1Oracle fusionmiddlewarecontinuosintegration slideshare_v1
Oracle fusionmiddlewarecontinuosintegration slideshare_v1
 
Oracle EMC 12 Installation
Oracle EMC 12 InstallationOracle EMC 12 Installation
Oracle EMC 12 Installation
 
Oracle ADF 11g Tutorial
Oracle ADF 11g TutorialOracle ADF 11g Tutorial
Oracle ADF 11g Tutorial
 
Oracle API Gateway Installation
Oracle API Gateway InstallationOracle API Gateway Installation
Oracle API Gateway Installation
 
Soa8
Soa8Soa8
Soa8
 
Apache camel overview dec 2011
Apache camel overview dec 2011Apache camel overview dec 2011
Apache camel overview dec 2011
 
oracle service bus
oracle service busoracle service bus
oracle service bus
 

Similar to Oracle OSB Tutorial 2

Keepcon integration tutorial_en (abril 2013)
Keepcon integration tutorial_en (abril 2013)Keepcon integration tutorial_en (abril 2013)
Keepcon integration tutorial_en (abril 2013)keepcon-slides
 
Performance report for Microsoft Office Communications Server ...
Performance report for Microsoft Office Communications Server ...Performance report for Microsoft Office Communications Server ...
Performance report for Microsoft Office Communications Server ...Videoguy
 
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03Dennis Parrott
 
Load Test Methodology: Server Load Testing
Load Test Methodology: Server Load TestingLoad Test Methodology: Server Load Testing
Load Test Methodology: Server Load TestingIxia
 
Oracle EBS to Oracle Service Cloud Integration
Oracle EBS to Oracle Service Cloud IntegrationOracle EBS to Oracle Service Cloud Integration
Oracle EBS to Oracle Service Cloud IntegrationBizinsight Consulting Inc
 
Continuation_alan_20220503.pdf
Continuation_alan_20220503.pdfContinuation_alan_20220503.pdf
Continuation_alan_20220503.pdfShen yifeng
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...Brian Petrini
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...Brian Petrini
 
UIUC Web Hosting SLD/SLA
UIUC Web Hosting SLD/SLAUIUC Web Hosting SLD/SLA
UIUC Web Hosting SLD/SLAwebhostingguy
 
Recap new features and functionality
Recap new features and functionalityRecap new features and functionality
Recap new features and functionalityDavid Dourgarian
 
WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...
WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...
WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...WSO2
 
Flows in the Service Console, Gotta Go with the Flow! by Duncan Stewart
Flows in the Service Console, Gotta Go with the Flow! by Duncan StewartFlows in the Service Console, Gotta Go with the Flow! by Duncan Stewart
Flows in the Service Console, Gotta Go with the Flow! by Duncan StewartSalesforce Admins
 
Control Transactions using PowerCenter
Control Transactions using PowerCenterControl Transactions using PowerCenter
Control Transactions using PowerCenterEdureka!
 
Project Proposal
Project ProposalProject Proposal
Project ProposalMike Wells
 
Hp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server ConsolidationHp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server ConsolidationCB UTBlog
 
]project-open[ Workflow Developer Tutorial Part 2
]project-open[ Workflow Developer Tutorial Part 2]project-open[ Workflow Developer Tutorial Part 2
]project-open[ Workflow Developer Tutorial Part 2Klaus Hofeditz
 

Similar to Oracle OSB Tutorial 2 (20)

Keepcon integration tutorial_en (abril 2013)
Keepcon integration tutorial_en (abril 2013)Keepcon integration tutorial_en (abril 2013)
Keepcon integration tutorial_en (abril 2013)
 
ESB Testing
ESB TestingESB Testing
ESB Testing
 
Performance report for Microsoft Office Communications Server ...
Performance report for Microsoft Office Communications Server ...Performance report for Microsoft Office Communications Server ...
Performance report for Microsoft Office Communications Server ...
 
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
 
Load Test Methodology: Server Load Testing
Load Test Methodology: Server Load TestingLoad Test Methodology: Server Load Testing
Load Test Methodology: Server Load Testing
 
Oracle EBS to Oracle Service Cloud Integration
Oracle EBS to Oracle Service Cloud IntegrationOracle EBS to Oracle Service Cloud Integration
Oracle EBS to Oracle Service Cloud Integration
 
Continuation_alan_20220503.pdf
Continuation_alan_20220503.pdfContinuation_alan_20220503.pdf
Continuation_alan_20220503.pdf
 
Soa Test Methodology
Soa Test MethodologySoa Test Methodology
Soa Test Methodology
 
QSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load RunnerQSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load Runner
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
 
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...
 
UIUC Web Hosting SLD/SLA
UIUC Web Hosting SLD/SLAUIUC Web Hosting SLD/SLA
UIUC Web Hosting SLD/SLA
 
Sarma resume
Sarma resumeSarma resume
Sarma resume
 
Recap new features and functionality
Recap new features and functionalityRecap new features and functionality
Recap new features and functionality
 
WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...
WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...
WSO2Con2011: Delivering the Goods? Integrated Order Management & Billing with...
 
Flows in the Service Console, Gotta Go with the Flow! by Duncan Stewart
Flows in the Service Console, Gotta Go with the Flow! by Duncan StewartFlows in the Service Console, Gotta Go with the Flow! by Duncan Stewart
Flows in the Service Console, Gotta Go with the Flow! by Duncan Stewart
 
Control Transactions using PowerCenter
Control Transactions using PowerCenterControl Transactions using PowerCenter
Control Transactions using PowerCenter
 
Project Proposal
Project ProposalProject Proposal
Project Proposal
 
Hp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server ConsolidationHp Polyserve Database Utility For Sql Server Consolidation
Hp Polyserve Database Utility For Sql Server Consolidation
 
]project-open[ Workflow Developer Tutorial Part 2
]project-open[ Workflow Developer Tutorial Part 2]project-open[ Workflow Developer Tutorial Part 2
]project-open[ Workflow Developer Tutorial Part 2
 

Oracle OSB Tutorial 2

  • 1. Oracle Service Bus – Lesson 2 Name – Rakesh Gujjarlapudi Email Address – rakesh_gujj@yahoo.com Scaling Integration Infrastructure with Oracle Service Bus Oracle Service Bus - End Point Management & Service Result Caching  Multiple endpoints, Oracle Service Bus can guarantee service availability even if one endpoint is offline. This is an infrastructure resiliency proof point.  Load balance service requests across endpoints according to a variety of algorithms. For example, if one service endpoint were more expensive to use, a weighted message dispatching algorithm can be configured to favor the less expensive service, while still guaranteeing message routing to all available endpoints.  Dynamically adjusting message routing across multiple endpoints in the event that one or more are unavailable. OSB automatically checks offline service endpoints for their availability, and adds them back into the active service endpoint pool when they are back online
  • 2. Introduction Business continues to grow rapidly. Failure of a service causes transactions processing failures. Issues 1. The current Credit Service Validation Service Provider cannot handle the load. 2. Due to the failures, checking status of the PO orders causing unnecessary load and spikes on infrastructure. OSB will help scale integration infrastructure through Endpoint Management and Service Result Caching. Endpoint Management  Provide additional capacity for increased load of the service requests  Contract to multiple Credit Card Payment Vendors to ensure high quality of service for POProcessing thus insulating customers from any disruptions of services caused by backend Service Providers. Advantage – Since the service is allready virtualized on Oracle Service Bus, we can make updates quickly and easily without impacting Service Consumers or the backend Application Developers of the POProcessing service (Service Provider). In this lesson we will bring on-line another credit validation vendor leveraging the advanced Endpoint Management features of Oracle Service Bus. Before Endpoint Management – Single Endpoint. After Endpoint Management – Multiple Endpoints add Agility and Scale
  • 3. Key Takeaway: Changes are made without any impact to Service Consumers or Providers. Oracle Service Bus helps insulate service consumers and service providers from these types of changes, allowing business to be more agile, robust and adaptable. Changes are made without any impact to Service Consumers or Providers. What is being done? During this section you will perform the following steps. You will start by re-configuring the validationForCC Business Service to have multiple endpoints. The Business Service will now load-balance across the two service providers: the original endpoint and new provider endpoint just added. You will test and Monitor endpoint utilization from the OSB Monitoring console by invoking ValidateCredit proxy service several times from OSB Test console. High Level Steps  Add endpoint http://<IP ADDRESS>:7001/Credit_Services/ProxyServices/ValidateCredit to the validationForCC business service.  Set the load balancing algorithm to round-robin.  Test the ValidateCredit proxy service multiple times to distribute service requests across both service endpoints.  Validate message distribution to multiple endpoints through the OSB Operations console. Steps in detail Add the New Credit Card Validation Service Endpoint Login to the Service Bus console (http://localhost:7001/sbconsole) username weblogic, password welcome1. Create a session by clicking the Create button in the Change Center. Use the Project Explorer navigate to the BusinessServices folder of the Credit Services project. To access the configuration for business service validationForCC, click on it’s name.
  • 4. Notice that there is a single service endpoint defined. We are going to add a 2nd service endpoint and we have been provided the service url. http://<IP- ADDRESS>:7001/Credit_Services/ProxyServices/ValidateCredit. To start the process of adding a 2nd service endpoint, click the edit icon in the Transport Configuration header bar. This screen appears. Copy the new url and put it in the url field next to the Add button. Click the Add button to add the 2nd url to the list of available endpoints. There should now be 2 urls in the endpoint table. Ensure the endpoint load balancing algorithm is set to round-robin.
  • 5. There are no more configuration actions to take. Click the Last button then scroll to the bottom of the page and click the Save button. Ensure that proxy service ValidateCredit is configured with Monitoring enabled, with an Aggregation Interval of at least 25 minutes. Activate Session Activate the Session by clicking on Activate in Change Center Add optional Description and click Submit
  • 6. Test In order to test the changes find the ValidateCredit proxy service by navigating to Resource Browser followed by Proxy Services. Next, launch the test console by clicking on the icon under Actions. In the test console, replace the CCNumber value with 1234-1234-1234-1234 and click Execute. You should see the following response. Click the Back button and run the test a few more times.
  • 7. Navigate to Operations. Click on the Service Health tab. Towards the bottom of the page services are listed. Click on the validationForCC business service to view the aggregate service metrics. Take a minute to browse the metrics page and get familiar with the available data. To view metrics per endpoint click on the Endpoint URI’s tab. Notice that the service requests are distributed across the two endpoints.
  • 8. Service Result Caching LabB Problem: Because of the Service Failure issues, IT keeps repetitively checking Purchase Order status causing unnecessary load and spikes on IT’s infrastructure. Implement the Solution IT will leverage OSB’s Service Result Cache to normalize the spikes for repetitive service calls. By caching the results of repetitive service calls, Oracle Service Bus can help scale and protect backend systems, avoiding outages caused by spikes enabling predictable scalability. The backend service can even temporarily go down yet cached results can still be returned (within a predefined time window) to ensure no loss in availability. What is being done? During this section you will perform the following steps. Configure Service Result Caching on the GetPO Business Service, which retrieves the Purchase Order given the ID of the Purchase Order. Enabling Result Caching will cache the Purchase Order in the Coherence Cache Test Service Result Caching functionality by invoking the GetPO Proxy Service, which Routes to the GetPO Business Service. First request for a Purchase Order will take 5 seconds, while the following requests (performed before the cache entry is expires from the Coherence Cache) will be much faster as the Purchase Order is served from the Coherence cache. High Level Steps  Import starting-caching.jar into OSB  (Optional) Test to see that every request to the GetPO Proxy Service takes about 5 seconds as Service Result caching is not enabled on the GetPO Business Service to which the GetPO Proxy Service Routes. For simplicity, the GetPO Business Service invokes the POStatus/TestServices/POProvider test service on
  • 9. OSB that waits for 5 seconds before responding with a Purchase Order. In reality, this service can exist any where.  Configure Service Result Caching on GetPO Business Service  Cache Token Expression – $body/po:PO_ID  Expiration Time – 1 minute  Update GetPO Proxy Service to propagate cache-originated and cache-token response metadata (from the GetPO Business Service) as SOAP Headers. cache-originated and cache-token are available in the Proxy Service at $outbound/ctx:transport/ctx:response/tp:cache- originated and $outbound/ctx:transport/ctx:response/tp:cache-token respectively.  Test to see that first request to the GetPO Proxy Service takes about 5 seconds. However, following requests for the same Purchase Order (same PO_ID) if made within 1 minute (Expiration Time) of the first request is much faster than 5 seconds as the Purchase Order is retrieved from the Coherence Cache. The request will take 5 seconds once the cache entry expires. Steps in Detail Create Session Navigate to System Administration In Import Resources, Click Browse Select starting-caching.jar Click Next Click Import Click Activate
  • 10. Click Submit Create Session Click Resource Browser Select Business Services Edit GetPO Business Service by clicking the service name
  • 11. Click on the Message Handling Configuration section to edit Result Caching. Note that currently Result Caching is set to Not Supported. Expand Advanced Settings by clicking Check Result Caching to Supported to enable rest of the Result Caching configuration Setup Result Caching configuration. The Cache Token Expression evaluates to the cache token part of the cache key used to cache the entry in Coherence Cache. The Expiration Time evaluates to the Time To Live for the cache entry. Cache Token Expression: $body/po:PO_ID Expiration Time: 1 min
  • 12. Click Next Click Save (Do not miss this step) Next, Edit the Message Flow of POStatus/ProxyServices/GetPO to propagate cache-originated and cache-token response metadata as SOAP Headers From the Project Explorer, select POStatus/ProxyServices
  • 13. Click for GetPO Proxy Service to edit the Message Flow Add Pipeline Pair by clicking GetPO and selecting Add Pipeline Pair Add Stage to Response Pipeline Edit Stage
  • 14. Add a Replace action – Click Add an Action and Select Message Processing->Replace Edit Replace action Variable: header Expression: Click <Expression>, Add the following XML in the text area and Click Save <caching-metadata> <cache-originated>{$outbound/ctx:transport/ctx:response/tp:cache- originated/text()}</cache-originated> <cache-token>{$outbound/ctx:transport/ctx:response/tp:cache- token/text()}</cache-token> </caching-metadata> Select Replace node contents
  • 15. Click Save All Click Activate Click Save All Click Submit You are done with Configuring the GetPO Business Service for Result Caching and Updating the GetPO Proxy Service to insert the cache-originated and cache-token response metadata (from the outbound) into the SOAP Headers (on the inbound) Test Select Project Explorer and expand POStatus/ProxyServices Click for GetPO Proxy Service to test
  • 16. Specify PO_ID as 2222 and click Execute You will notice that it will take about 5 seconds to return with the PurchaseOrder response. This is because the PO service, invoked by the GetPO Business Service, is mimicked by POStatus/TestServices/POProvider proxy service which has a Java callout that waits for 5 seconds before returning with the Purchase Order. You will see the following response which indicates the response was not retrieved from the cache (cache-originated=false). You will also see the cache-token that was used to add the entry to the Coherence cache (cache-token=2222)
  • 17. Immediately within 1 minute of the first request make another request with the same, 2222, PO_ID. Click Back and Click Execute to perform this step
  • 18. You will now see the following response. This response has cache-originated=true, which implies the Purchase Order came from the Coherence Cache. The header also has cache-token=2222, which is the PO_ID. If you repeat the test again after the cache entry expires (more than 1 minute after the first request) you will see the same response as in previous step. The response comes from the backend (instead of the cache) and the response is cached using the specified cache-token.