Thomas  Rischbeck    Real  Life  E S B
Upcoming SlideShare
Loading in...5
×
 

Thomas Rischbeck Real Life E S B

on

  • 980 views

 

Statistics

Views

Total Views
980
Views on SlideShare
980
Embed Views
0

Actions

Likes
0
Downloads
10
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Thomas  Rischbeck    Real  Life  E S B Thomas Rischbeck Real Life E S B Presentation Transcript

  • This Presentation Courtesy of the International SOA Symposium October 7-8, 2008 Amsterdam Arena www.soasymposium.com info@soasymposium.com Founding Sponsors Platinum Sponsors Gold Sponsors Silver Sponsors
  • [21.10.2008] Real Life ESB Use Cases, Deployment Scenarios, Experiences. Dr. Thomas Rischbeck 2008-10-07, 11:00 SOA Symposium Amsterdam [innovation process technology inc.] [www.ipt.ch] ESB Patterns [innovation process technology inc.] [www.ipt.ch] [©2002 ipt | switzerland germany austria] [seite 1]
  • [21.10.2008] Service Virtualization Proxy Pattern Location Transparency Protocol Bridging Security Enforcement Transformation Content-Based Routing Load-Balancing and Failover Service Monitoring Message Queueing Complex Event Processing Source: BEA [©2008 ipt | switzerland] [page 3] ESB Patterns ESB Pattern/ Proxy Pattern Core ESB Optional Patterns Asynchronous Policy Broker Routing EDA Queuing Enforcement Temporal Location Schema Complex Data Format Data Model Protocol Decoupling Transparency Validation Event Transformation Transformation Bridging Processing Sync/Async Virtualization Enforcement EDIFACT Protocol Transport Mapping (PEP) Event Versioning Protocol Content-based Tracking MLF to XML (eg SOAP) Bridging Aggregate/ Routing Authorization Security Split Event Stream XML to MFL Payload Mapping Load Token Processing Versioning Balancing Validation Security Reliable MEPs XSTL Protocol Delivery Failover Security Mapping Interception publish- Itinerary-based Identity subscribe (orchestration) Mapping conversation Microflows (orchestration) Past Design-time Control/ Audit SLA Auditing/ Event Service Monitoring Charging Tracking Discovery [©2008 ipt | switzerland] [page 4] [©2002 ipt | switzerland germany austria] [seite 2]
  • [21.10.2008] Protocol Bridging Protocol Bridging Synchronous to Asynchronous Bridging REST/POX SOAP RSS JMS FTP SMTP POP3 File … [©2008 ipt | switzerland] [page 5] Security HTTP/SOAP Service Clients Enterprise Service Bus Business [X.509] HTTP/SOAP Services Encryption, Authentication Proxy Flow signing Application [Basic] Role based Service Client Route Authorization SSL [X509] Service Security Framework Security Mapping Transport based Message Based: Basic Authentiation WS-Security Mapping between Security Realms Bridge Identity Domains (user names, credential) Policy Enforcement Point Verify SAML Token, Strong Authentication Access Control: Authorization based on user, group, role, credentials Unified Policies for all Services [©2008 ipt | switzerland] [page 6] [©2002 ipt | switzerland germany austria] [seite 3]
  • [21.10.2008] Transformation Service Clients Enterprise Service Bus Business Services V 1.1 Transform V 1.1 1.1 1.3 Route V V 1.1 1. 3 V 1.2 V 1.2 Transform V1 1.2 1.3 Route .3 V 1.2 V 1.3 V 1.3 V 1.3 Route V 1.3 V 1.3 Transformations Support for multiple Service versions SOAP 1.1 auf SOAP 1.2 Namespace Change Data Format: Semantics Handle Non-XML Payloads (EDIFACT XML) Web Service [©2008 ipt | switzerland] [page 7] Content-based Routing (CBR) Service Clients Enterprise Service Bus Business Services Proxy Flow HTTP/SOAP HTTP/SOAP Application Service VIP Client CBR HT T P/ SO AP Service normal Content-Based Routing SOAP Headers $header Transport Headers JMS Properties $body XML Payload (SOAP Body) Context $attachment $fault [©2008 ipt | switzerland] [page 8] [©2002 ipt | switzerland germany austria] [seite 4]
  • [21.10.2008] Load Balancing and Failover Service Clients Enterprise Service Bus Business Services HTTP/SOAP Proxy Flow Service Client URI X Route JMS URI Y Load Balancing Requires Stateless Services ESB itself must be scalable! Failover Requires Idempotent Services [©2008 ipt | switzerland] [page 9] Service Virtualization Service Clients Enterprise Service Bus Business Services WSDL A Proxy Flow WSDL X Service Client Service X Aggreate Routae Interface WSDL Y Service Y Mix and match interfaces Service selection across multiple WSDLs Single coherent interface to all authorized backend services Merge without namespace collisions [©2008 ipt | switzerland] [page 10] [©2002 ipt | switzerland germany austria] [seite 5]
  • [21.10.2008] Error Handling Service Clients Enterprise Service Bus Business Services Proxy Flow HTTP/SOAP Application Web Service Client Validate Route Error Code Error handling Features Validation before the Request hits the Service Reduces Service Load and Network Traffic [©2008 ipt | switzerland] [page 11] Service and SLA Monitoring Service Clients Enterprise Service Bus Business Services Proxy Flow HTTP/SOAP HTTP/SOAP Application Web Service Route Client On avg execution > 5 Ms Statistics Reporting Framework SMTP JMS Monitor System Operations Alerting and reporting key monitoring points Gauge system health Troubleshooting and Reporting Drill into message tracking and execution history Captures system statistics including threshold violations, en-queued messages, performance bottlenecks, task workloads Monitor SLA: execution time, # of errors Simple Business monitoring Track relevant business/service data [©2008 ipt | switzerland] [page 12] [©2002 ipt | switzerland germany austria] [seite 6]
  • [21.10.2008] Asynchronous Delivery Service Clients Enterprise Service Bus Business Services Proxy Flow Request Request Application Queue Route Service Client Proxy Proxy Flow Response Response Route Queue Proxy Persistence Improves Lose Coupling Service Downtime Intermittent Communication Unpredictable Load No Peak Load, Service must handle only Average Load Load Balancing Non-blocking for client (long-lasting activities) Inspect in-flight messages [©2008 ipt | switzerland] [page 13] EDA, CEP, and the works Service Clients Complex Event Processing Business Event Services Complex Application Event Client Service Event Application Client Event Application Client Event-Driven Architecture (EDA) Events as “first-class citizens” in the integration model Publish-Subscribe Messaging: Topics Complex Event Processing (CEP) Detect Patterns in the Event Stream E.g., Fraud Detection [©2008 ipt | switzerland] [page 14] [©2002 ipt | switzerland germany austria] [seite 7]
  • [21.10.2008] ESB Risks [innovation process technology inc.] [www.ipt.ch] ESB RISK 1: Vendor Lock-in ESB is standards-based but not itself a standard! Every ESB is different and cannot easily be replaced I’m a TRUE ESB! Risk of disruption given market consolidation Zapthink: „message-bus with service-oriented interfaces“ IDC: The ESB is an open standards-based technology IBM: ESB is just a concept that will revolutionize IT and enable flexible and Pattern scalable distributed computing for generations to come. Sonic: standards-based integration platform that MOM++ EAI++ combines messaging, web services, data transformation to reliably connect and coordinate the interaction of significant numbers of diverse applications across extended enterprises with transactional integrity (2004) Cali-Mero Fio-Rano WS*-Stack is the ESB! Burton: Managed Gartner: „low-cost lightweight alternative Communications to traditional integration middleware“ Infrastructure (2007) [©2008 ipt | switzerland] [page 16] [©2002 ipt | switzerland germany austria] [seite 8]
  • [21.10.2008] ESB RISK 2: ESB Archipelago Multiple ESBs because of mergers and SOA projects in separate business units. STRATEGY: Plan for a logically coherent architecture despite multiple integration technologies Interoperation Technology and Standards Convergence Watch WS-* standards, WS-I compliance and SCA Hierarchy of ESBs? Finance Sales HR Consumers Consumers Consumers ESB1 ESB2 ESB3 Services Services Services [©2008 ipt | switzerland] [page 17] ESB RISK 3: Distributed Business Logic Service discovery, binding, communication Web services (XML, SOAP, WSDL, HTTP) Extensible for plug-in services Service URL "virtualization" and rule-based routing Browser Reliable message delivery User- Rich Security Facing Client Publish-and- Logic Load Log, Validate, subscribe Balance, Monitor, Transform Failover Audit ESB Adapter Business Business Business Business Data Business Business Service Service Service Legacy Service Service Service Service App. [©2008 ipt | switzerland] Protocol Bridging [page 18] [©2002 ipt | switzerland germany austria] [seite 9]
  • [21.10.2008] ESB RISK 4: auf HTTP/s JMS Legacy Protokolle Semantic WS-RM (exactly once) at-least-once (retries) Differences at-least-once exactly-once (Proxy Retry) (Proxy Retry) WTC/Tuxedo WTC/Tuxedo best-effort best-effort RMI/IIOP RMI/IIOP In Protocols von best-effort RE1 RE2 RE2 HTTP/s QoS at-least-once (retries) RE1 RE2 RE2 RE2 RE2 WS-RM (exactly once) Security best-effort synchronous/ JMS at-least-once exactly-once asynchronous Legacy Protokolle WTC/Tuxedo RE1 Grundsatz: stateful/ WTC/Tuxedo - (app. Retry) Legacy Protokolle werden nicht über den ESB RMI/IIOP RE2 stateless geroutet RMI/IIOP - retry RE2 RE2 at-most-once = best effort Quality of Service at-least-once (zuverlässig Nachrichtenzustellung) exactly-once kein Ziel - nicht unterstützt [©2008 ipt | switzerland] [page 19] ESB Use Cases [innovation process technology inc.] [www.ipt.ch] [©2002 ipt | switzerland germany austria] [seite 10]
  • [21.10.2008] e-licensing: Zone traversal, Security Enforcement Client-Server SOA “Brokering” WS calls Enforcement of Security Policies SSZ Isolation of the Backends Unified Network policies (WISB) Location Transparency, loose coupling Service Management, Monitoring, Notification Reporting BV-Netz [©2008 ipt | switzerland] [page 21] e-dec: Infrastruktur-Services [©2008 ipt | switzerland] [page 22] [©2002 ipt | switzerland germany austria] [seite 11]
  • [21.10.2008] e-dec: service-oriented “interior architecture” Asynchronous multi step processing of messages (Itinerary-based routing) Lightweight containers for App Drop deploying services in a File r Adapte JCA distributed environment Persistenz, Garantierte QoS 2 3 1 für Nachrichten-austausch 4 5 Sonic ESB Custom Legacy MOM [©2008 ipt | switzerland] [page 23] SAP XI: Legacy Enablement Access SAP modules via WS Limited support of advanced WS* standards HTTP/SOAP [©2008 ipt | switzerland] [page 24] [©2002 ipt | switzerland germany austria] [seite 12]
  • [21.10.2008] BAFU DAZU: Protocol Mapping [©2008 ipt | switzerland] [page 25] EJPD: Schengen/Dublin Project 1. Protokoll Mapper/Integration Broker Protocol Bridging Data Modell Transformation Infr Data Format Transformation SO cture ast A ru BE SB 2. Encapsulation/Quarters EJPD AL Requirements A Network Zone Transversal Da Security Mapping taP o we (Realm, Protocol, Tokens) r Wrapping SisOne4All, funnelling all external access [©2008 ipt | switzerland] [page 26] [©2002 ipt | switzerland germany austria] [seite 13]
  • [21.10.2008] EJPD: Schengen/Dublin Project Web Services Protocol Mapping (Tuxedo WS) Data Format Mapping (bin/WTC XML) Security ID Mapping (no federation) BEA Tuxedo [©2008 ipt | switzerland] [page 27] e-licensing: Zonenübergang, Security Enforcement Client-Server SOA “Brokering” WS calls Enforcement von Security Policies SSZ Isolation des Backends Einheitliche Netzwerkpolicies (WISB) Location Transparency, lose Kopplung Service Management, Monitoring, Notification Reporting BV-Netz [©2008 ipt | switzerland] [page 28] [©2002 ipt | switzerland germany austria] [seite 14]
  • [21.10.2008] hierarchical ESB landscape [©2008 ipt | switzerland] [page 29] DHL Express Protocol Mapping (FTP, WS, Email) Data Format Mapping (CSV XML) Security Enforcement (SAML) [©2008 ipt | switzerland] [page 30] [©2002 ipt | switzerland germany austria] [seite 15]
  • [21.10.2008] Outlook SOA ≠ SOA Runtime Infrastruktur An ESB by itself is just useless plumbing! Business Requirements, Services Universal Business Adapter Build as part of the SOA Governance Success necessitates organizational change l ge na Structure and Project Method an tio ch iza Different application design n Go ga Cooperation between business and IT Or ve and across LOBs („interdiciplinary“) rn an Risk: Usage of SOA Infrastructure JUST SO Infras A ce for integration (modern-day EAI) tructu r e SOA success [©2008 ipt | switzerland] [page 31] Thank you! [ipt] innovation process technology ___________________________ Dr. Thomas Rischbeck | it architect Office Zug Baarerstrasse 14 | CH-6300 Zug Phone: +41 41 727 25 25 | Fax: +41 41 727 25 26 Email: thomas.rischbeck@ipt.ch [innovation process technology inc.] [www.ipt.ch] [©2002 ipt | switzerland germany austria] [seite 16]