oracle enterprise service bus: technical architecture · pdf fileoracle enterprise service...

20
<Insert Picture Here> Oracle Enterprise Service Bus: Technical Architecture and Product Update Dave Berry: Sr. Manager, Oracle Integration Demed L’Her: Sr. Principal Product Manager, Oracle Integration

Upload: nguyennguyet

Post on 23-Mar-2018

236 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

<Insert Picture Here>

Oracle Enterprise Service Bus: Technical Architecture and Product UpdateDave Berry: Sr. Manager, Oracle IntegrationDemed L’Her: Sr. Principal Product Manager, Oracle Integration

Page 2: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

<Insert Picture Here>

Program

• Oracle Enterprise Service Bus Overview• Foundation for Oracle SOA Suite

• Features: Virtualize, Transform, Route

• Architecture• Clusters, Life Cycle Management

• Transactions, Exception Handling

• Conclusion• Summary

Page 3: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Oracle Fusion Middleware

Page 4: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Apps Legacy

AdaptersAdapters

Partners

B2BB2B

RFID

SESSES

DB

EVENTS & CONNECTIVITY

Multi Protocol

RoutingXSLTTransform

Enterprise Service BusEnterprise Service Bus

NativeBPEL

Business Rules

Human Workflow

BPEL Process ManagerBPEL Process Manager

ROUTING & ORCHESTRATION

The Oracle SOA Platform

J2EE Application ServerOracle AS, JBoss, WebLogic, WebSphere

Messaging

UDDI

Policies

Security

Web Services Web Services ManagerManager

RegistryRegistry

GOVERNANCEEvents AnalyticsBusiness

MonitoringSystem

Monitoring

Enterprise Enterprise ManagerManager

BAMBAM BIBIMANAGEMENT

&MONITORING

App DevFramework

JDeveloperJDeveloper

Analyst Tools

BPA SuiteBPA Suite

Page 5: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Oracle Enterprise Service Bus: The Foundation for SOA

ESB is a multi-protocol fabric to separate integrationconcerns from applications and business logic

How is this achieved?

1. Virtualize Endpoints: From resources to services

2. Transform: Convert data to target formats3. Route: Reliably transport and route data over a variety of protocols

Expose everything as web services

1. Standards-based: XPath, XSLT, SOAP, JMS, JCA, …

2. Hot-pluggable: J2EE, JMS, Database, …

Page 6: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Patterns

Fan In/Out- 1 way store and fwd- Sync or Async- Multiple transactions- End to end

Virtualized Service- 2 way sync- Content based responder- Static inbound WSDL- Operational flexibility

Response Forward- 1 way inbound- 2 way outbound- Route based on callout response- Forward original document

Page 7: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Architecture

• Metadata Server – Integration Server• Central DT interface: JDeveloper, ESB Control, Import/Export

• Changes pushed to RT server as transactions through JMS

• ESB Control centralized management/monitoring• Configurable back end repository: database, webdav

• Runtime Server• Fast In Memory Service and Artifact Cache

• Flexible topology, clustering, external load balancing

• ESB System is underlying unit of scalability• Async Routing Rules enable distributed Bus topology

• Leverages underlying J2EE architecture• Runs as J2EE application• Utilizes JMS provider

• Transactions, scalability, high availability

Page 8: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

ESB Control(monitoring)

JDev(design)

Metadata Server Runtime Servers

Artifacts

XSD, XSLTWSDL, Maps

Relational

Service MD,Routing Rules,

Instances, Errors

syncexport

registerimport

monitorupdaterouting

JDBC

3-Tiered Architecture

UI Tier

Middle Tier

Data Tier

JMS

JDBC

Page 9: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

MDSControl Topic (Content Msgs)

Async Topic

Resubmission Topic

Monitor Topic (Tracking)

Error Topic (Error)

Runtime Servers

Control

Oracle ESB Queuing Architecture

Oraesb Schema-Service data-Instance data

Internal Topics

Error Hospital

Data Tier

Async Topic

Resub Topic

Monitor TopicError Topic

Control Topic

Monitor Topic (Tracking)

Error Topic (Error)

Page 10: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Shared Meta Data Cluster

• Flexible Cluster Topology• No Single Point of Failure - Guaranteed Delivery• ESB System is lowest level of granularity• ESB System configured to ESB cluster: many to 1• ESB RT server configured to 1 ESB cluster (many systems)

• Symmetric for High Availability• All systems configured to same cluster• All RT servers load the same cluster

• Asymmetric for Scalability• Many clusters with multiple systems• RT servers load different clusters• Optimized service memory cache

• Best Practice: Hybrid Cluster Topology• Combination of Symmetric and Asymmetric services clusters• External Load Balancer: ESB system has external “virtual” host/port

Page 11: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Flexible Deployment Strategiessymmetric

asymmetric

ESB default cluster

NewEmployee

CreateInvoice

UpdateCustomer

NewEmployee

CreateInvoice

UpdateCustomer

NewEmployee

CreateInvoice

UpdateCustomer

CreateInvoice

UpdateCustomer

Siebel PSFT

NewEmployee

Services in Metadata Repository

Load Balancer

CreateInvoice

UpdateCustomer

CreateInvoice

UpdateCustomer

NewEmployee

cluster = Siebel Cluster = PSFT

/Siebel /PeopleSoft

/PeopleSoft/Siebel

Page 12: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

ESB System/Cluster Configuration

ESB System

ESB Cluster

Bind HostBind PortDefer Topic

Error Topic

Error Notifications

• ESB_Parameter table “DT_OC4J_HOST”• File “esb_config.ini” cluster_name=ESB

Page 13: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Life Cycle Management

• JDeveloper Primary Developer Tool• Model services, adapters, transformations, routing rules

• Register service metadata to MDS/Integration server

• Sync with MDS for any ESB Control MD changes

• ESB Control for Some Service Reconfiguration• Configure ESB system: cluster and load balancer information

• Configure endpoint properties: service location, retry, file, directory...

• Define Trackable Fields and Domain Value Maps

• Edit Routing Rules, filter expressions

• Export/Import• Ant based scripts with System or Service level granularity

• Dev to Test to Production: JDev � MDS � Export � zip � Import …

• Manage endpoints with JNDI, endpoint properties, custom ant tasks

Page 14: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

PR

OD

TE

ST

Life Cycle Management

DEVELOPMENT

JDeveloper + RCS

DEPLOYMENT

• From JDev

• Via ANT-scriptable

import/export scripts

MONITORING

• ESB Console

• AS Control

ESB Dev Instance

MD ServerConsoleJDeveloper

MetadataRT Server

ESB Test Instance

MD ServerMetadata

RT Server

ESB Production Cluster

MD ServerMetadata

RT ServerRT ServerMetadata

Console

Console

Export Importmd.zip

Export Importmd.zip

RCS

DE

V

Page 15: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Transactions

• Global End-to-End JTA/XA Transactions• BPEL � ESB � BPEL

• JCA � ESB � WSIF

• ESB Inherits Inbound Global Transactions• “Async” Routing Rules ends scope of current transaction

• New ESB initiated transactions grouped by ESB System

• Transaction Exception Handling and Rollback• Errors on existing inbound transactions rolled back to initiator

• Errors on ESB initiated transactions can be resubmitted

• End-to-end message flow terminates on first failed service regardless of transaction state or owner

Page 16: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Transaction Overlay

Async Rule is

New Transaction

Async inSame ESBSystem Rule

Async inDifferent ESBSystem Rule

Only SyncRules

1

2

3

4

3

4

Page 17: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Exception Handling

• ESB Control Error Hospital• View all failed flows including original document• Resubmit/edit “retryable” errors on ESB initiated transactions• Roadmap: Batch resubmit, auto retry

• ESB Control Instance Tracking• View all failed flows including original document• Resubmit/edit “retryable” errors on ESB initiated transactions• Roadmap: Management API

• Non Transactional Endpoints• File, FTP, SOAP ...• Default and custom exception handlers: File:// JMS:// BPEL://

Page 18: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

Exception Handling in Instance Data• Transaction Impact• Error Message, Trace, Payload• Resubmitable Errors

Page 19: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper

<Insert Picture Here>

Conclusion

• The Right Architecture for SOA Infrastructure• Deployed to any J2EE Application Server

• Flexible Topologies• Highly Available and Scalable

• External Load Balancing

• Reliable Architecture• Full Transaction Support

• Configurable Exception Handling

• Configurable Life Cycle Management• Metadata server

For more info: visit http://otn.oracle.com/soa

Page 20: Oracle Enterprise Service Bus: Technical Architecture · PDF fileOracle Enterprise Service Bus: Technical Architecture and Product Update ... Security Web Services Manager ... JDeveloper