oracle enterprise service bus the foundation for service
play

Oracle Enterprise Service Bus: The Foundation for Service-Oriented - PowerPoint PPT Presentation

<Insert Picture Here> Oracle Enterprise Service Bus: The Foundation for Service-Oriented Architecture Demed LHer, Sr. Principal Product Manager, Oracle Integration Dave Berry, Sr. Manager, Oracle Integration Program <Insert Picture


  1. <Insert Picture Here> Oracle Enterprise Service Bus: The Foundation for Service-Oriented Architecture Demed L’Her, Sr. Principal Product Manager, Oracle Integration Dave Berry, Sr. Manager, Oracle Integration

  2. Program <Insert Picture Here> • The Oracle SOA Suite • Enterprise Service Bus: Foundation for SOA • ESB Usage Patterns • Features & Characteristics • Conclusion

  3. Oracle Fusion Middleware

  4. The Oracle SOA Platform Enterprise BPA Suite BPA Suite BAM BAM BI BI Enterprise Manager Manager MANAGEMENT & Analyst System Business ROUTING & ORCHESTRATION GOVERNANCE Events Analytics MONITORING Tools Monitoring Monitoring BPEL Process Manager JDeveloper JDeveloper BPEL Process Manager Web Services Web Services Manager Manager Native Human Business BPEL Workflow Rules Policies EVENTS & CONNECTIVITY Enterprise Service Bus App Dev Enterprise Service Bus Framework Multi XSLT Routing Security Protocol Transform Adapters B2B SES Registry Adapters B2B SES Registry Apps DB Legacy Partners RFID UDDI J2EE Application Server Messaging Oracle AS, JBoss, WebLogic, WebSphere

  5. Program <Insert Picture Here> • The Oracle SOA Suite • Enterprise Service Bus: Foundation for SOA • ESB Usage Patterns • Features & Characteristics • Conclusion

  6. Oracle Enterprise Service Bus: Objectives • No Coding Required • Put proprietary technologies at the edges of SOA • Abstract IT resources as services Achieve “Separation of Concerns” Between IT and Business

  7. How IT events can negatively impact business processes Database moves Loan approval process Loan approval process jdbc : oracle : thin : jdbc : oracle : thin : saturn:1521:orcl mars :1521:orcl DB DB Host:10.10.10.10 Host:10.10.10.10 Port:2320 Port:2320 SAP SAP BPM BPM � � � � Business process needs revision!

  8. Achieving Separation of Concerns Database moves Loan approval process Loan approval process CreateCustomer.wsdl jdbc : oracle : thin : jdbc : oracle : thin : CreateCustomer.wsdl saturn:1521:orcl mars :1521:orcl DB DB Host:10.10.10.10 Host:10.10.10.10 Port:2320 Port:2320 SAP SAP jdbc : oracle : thin : jupiter:1523:audit Audit BPM ESB BPM ESB DB Audit DB added � Business process � � � remains unchanged

  9. Oracle Enterprise Service Bus: The Foundation for SOA ESB is a multi-protocol fabric to separate integration concerns from applications and business logic How is this achieved? 1. Virtualize Endpoints: From resources to services 2. Transform: Convert data to target formats 3. 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, …

  10. Virtualize Endpoints: Connecting to Target Systems 1. Web Services: PeopleSoft, Amazon, … 2. Applications: e-Business Suite, SAP, … 3. Legacy: CICS, Tuxedo, … 4. Technologies: database, file, JMS, … Non-WS Connectivity through Adapters • Standard JCA 1.5 • Transactional (whenever possible) • Sync, Async, bi-directional • Wizards-driven, graphical introspection of target systems Adapters Bundled with ESB AQ, MQ, RDBMS, File, FTP, JMS, MQ, Oracle Applications … and 300+ more available via OEM (iWay, Attunity)!

  11. Virtualize Endpoints: Web-service enablement of existing resources Host:10.10.10.10, Port:2320 Native API Native API Service CRM Consumer [proprietary protocol] Host:10.10.10.10 Native API Native API Port:2320 JCA CRM CreateCustomer.wsdl Adapter Service [proprietary protocol] Consumer [SOAP] ESB � Service consumers no longer need to talk proprietary protocols

  12. Virtualize Endpoints: Introspecting Target Systems     DB   e-Business Suite   JMS � � � �

  13. Transform Convert data as it flows through the bus • Canonical or point-to-point transformations • Standard XSLT for expressing transformations • Drag-and-drop graphical mapping tool • “Smart” mapping tool , dictionary-based • Domain-Value Maps for fast, static, in-memory lookups

  14. Route Reliably transport and route data over a variety of protocols Reliable messaging and guaranteed delivery are key in highly-distributed, asynchronous, “fire-and- forget” SOA where senders do not wait for a response. • Internally: uses JMS for asynchronous flows • On the edges: wide support of transports SOAP , JMS , legacy messaging • Hot-pluggable transport: 3rd Party JMS, DB, J2EE…

  15. Route: Taking Decisions • Content-based: if total_price > 500, route to FedEx • Header-based: if message_type = order, route to fulfillment • Standard XPath to define routing expressions • Graphical expression builder • Routing rules can be altered at runtime

  16. Expose Everything As A Web-Service • By default, any ESB service is exposed as a web service (WSDL auto- generated) • Each step of an ESB flow is a potential entry point • Each web-service can be secured

  17. Program <Insert Picture Here> • The Oracle SOA Suite • Enterprise Service Bus: Foundation for SOA • ESB Usage Patterns • Features & Characteristics • Conclusion

  18. Usage Patterns: simple synchronous request/reply flow Basic RPC mechanism GetCustomer.wsdl requestor

  19. Usage Patterns: non-deterministic synchronous request/reply flow • Consumer does not explicitly know the service provider • Service provider selection based on message content/header GetCustomer.wsdl requestor

  20. Usage Patterns: simple 1-way asynchronous flow • The simplest but also the most typical ESB pattern • “Fire-and-forget” CreateCustomer.wsdl event

  21. Usage Patterns: fan-out 1-way asynchronous flow • 1 event triggers multiple parallel operations • All outbound operations can be grouped in one or more transactions Customer details are 2 2 logged in the audit database Customer details 2 2 CreateCustomer.wsdl are enqueued on JMS to the CRM event An event is placed on 1 1 the bus to notify of a new customer. Payload Customer details 2 2 is customer details. are enqueued on MQ to the mainframe

  22. Usage Patterns: Response-forwarding Can be used for Get customer address • Routing based on lookup 2 2 from database • Asynchronous “request/reply” ShipOrder.wsdl event Combine order details 3 3 and customer details An event is placed on 1 1 to prepare shipping the bus to indicate an order is ready for shipment. Payload consists of order details and customer ID.

  23. Usage Patterns: Canonical Data Model • All messages on the bus are converted to a common data model → Reduces the overall number of maps to generate → Respective application owners only need to know about 2 data models: their own one + the canonical one. CRM ERP CRM ERP COMMON DATA MODEL (Customer Object) Billing Shipping Billing Shipping

  24. Program <Insert Picture Here> • The Oracle SOA Suite • Enterprise Service Bus: Foundation for SOA • ESB Usage Patterns • Features & Characteristics • Conclusion

  25. ESB Control Overview Routing Services Manage & Search Transformation DB Adapter JMS Adapter Flow Instances Flexible Filter Error Retry Expression Overview Navigator BPEL Process

  26. ESB Designer Overview Component Palette Adapter JDev Services Application Routing Services Transformation JDev DB Project Adapter Metadata • WSDL • XSD • XSL File Adapter Filters JMS Adapter Operation

  27. 3-Tiered Architecture ESB Control JDeveloper UI Tier (monitoring) (design) update export import monitor routing Runtime Metadata Middle Tier Servers Server JMS J2EE J2EE JDBC JDBC Artifacts Relational Data Tier XSD, XSLT Service MD, WSDL, Maps Routing Rules , Instances, Errors MDS

  28. Transactions & Exceptions Handling End-to-end transaction/XA support via JTA Ability to set transaction boundaries Built-in “error hospital” to persist and resubmit failed messages SYNCHRONOUS FLOW ASYNCHRONOUS FLOW Submitter is in charge: ESB is in charge: • Persists messages • Persists messages • Retries, resubmit • Resubmit

  29. Standards • Virtualize XML, XSD, JCA, WSDL, WSIF, WSIL, JNDI, JDBC • Transform XML, XSD, XSLT, PL/SQL • Route XPath, JMS, SOAP, HTTP, JDBC, XA, JTA Standards Drive Hot Pluggability

  30. Security Main security challenges in distributed environments • Islands of security lead to security gaps • No end-to-end visibility • Developers are not necessarily security experts • Modifying policies is extremely complex ESB leverages the Oracle SOA infrastructure for security � J2EE Container (OC4J) at service level � Oracle Web Services Manager to configure global policies � No security hard-coded in endpoints � Deployment options: gateway or agent modes � ESB sets and propagates security headers (WS-Security)

  31. ESB, part of a truly integrated suite 1. Installation • Single installer – J2EE to Human Workflow under 20mn • Single deployment platform 2. Design-Time • Single design environment 3. Runtime • Single monitoring UI (web browser) with Single Sign-On • Direct Java binding between co-located components • End-to-end instance tracking

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend