SOA oder so. ESB für Querdenker. Produktlinien-Design mit ESB. Peter Klotz. Chief Architekt blue elephant systems GmbH



Similar documents
Building a Service Oriented Architecture with ServiceMix. Jeff Genender CTO Savoir Technologies, Inc

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.

AquaLogic ESB Design and Integration (3 Days)

JBI and OpenESB. Introduction to Technology. Michael Czapski Advanced Solutions Architect, SOA/BI/Java CAPS Sun Microsystems, ANZ

SOA Fundamentals For Java Developers. Alexander Ulanov, System Architect Odessa, 30 September 2008

Building the European Biodiversity. Observation Network (EU BON)

AquaLogic Service Bus

SOA. Next Generation Open Source. Burr Sutter Sr. Product Manager, SOA (JBossESB, Riftsaw, jbpm, Drools) September 3, 2009

UNIVERSITÉ DE NANTES LABORATOIRE D INFORMATIQUE DE NANTES ATLANTIQUE. Yann Busnel. Master 2 MIAGE. Yann Busnel ESB - Concept et techniques 1

Experiences with Open-Source BPM/SOA-based Stack using Java EE Rok Povše, Matjaž B. Jurič

WELCOME TO Open Source Enterprise Architecture

Next-Generation ESB. Kevin Conner SOA Platform Architect, Red Hat Keith Babo JBoss ESB Project Lead, Red Hat. June 23rd, 2010

Oracle SOA Suite Then and Now:

Open ESB. Sang Shin Java Technology Evangelist Sun Microsystems, Inc. Raffaele Spazzoli Imola Informatica 1

Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL wann soll welche Komponente eingesetzt werden?

ESB solutions Title. BWUG & GSE Subtitle guy.crets@i8c.be. xx.yy@i8c.be

SOA. Next Generation Open Source. Burr Sutter Sr. Product Manager, SOA (JBossESB, Riftsaw, jbpm, Drools) September 3, 2009

Enterprise Service Bus Evaluation as Integration Platform for Ocean Observatories

JBOSS ESB. open source community experience distilled. Beginner's Guide. Enterprise. Magesh Kumar B

Closer Look at Enterprise Service Bus. Deb L. Ayers Sr. Principle Product Manager Oracle Service Bus SOA Fusion Middleware Division

<Insert Picture Here> Oracle Direct Potsdam

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

What is the NXTware Evolution Server Peter Marquez, Product Marketing ecube Systems

SERVICE ORIENTED ARCHITECTURE

FUSE ESB. Getting Started with FUSE ESB. Version 4.1 April 2009

Oracle SOA Suite: The Evaluation from 10g to 11g

Beyond the SOA/BPM frontiers Towards a complete open cooperative environment

WELCOME. Where and When should I use the Oracle Service Bus (OSB) Guido Schmutz. UKOUG Conference

Introduction to Service-Oriented Architecture for Business Analysts

A standards-based approach to application integration

Integration of Different Aspects of Multi-Tenancy in an Open Source Enterprise Service Bus

Enterprise Service Bus

Databases Integration through a Web Services Orchestration with BPEL using Java Business Integration

Oracle Business Activity Monitoring 11g New Features

RED HAT JBOSS FUSE SERVICE WORKS 6 COMPARED WITH MULE ESB ENTERPRISE 3.4

Presentation Outline. Key Business Imperatives Service Oriented Architecture Defined Oracle SOA Platform SOA Maturity/Adoption Model Demo Q&A

Reusing Existing * Java EE Applications from Oracle SOA Suite

AnyWeb AG

Safe Harbor Statement

Presentation of Enterprise Service Bus(ESB) and. Apache ServiceMix. Håkon Sagehaug

PEtALS Quick Start. PEtALS Team Roland NAUDIN - February

Introduction to WebSphere Process Server and WebSphere Enterprise Service Bus

SCA-based Enterprise Service Bus WebSphere ESB

Open Source SOA with Service Component Architecture and Apache Tuscany. Jean-Sebastien Delfino Mario Antollini Raymond Feng

Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus IBM Corporation

Oracle SOA Hands-On-Workshop. Arne Brüning - Bernhard Fischer-Wasels Leitende Systemberater

National Aeronautics and Space Administration (NASA) OpenSource ESB. Version 4.0

Magnus Larsson Callista Enterprise AB

Web Services in Oracle Fusion Middleware. Raghu Kodali Consulting Product Manager & SOA Evangelist Oracle Fusion Middleware Oracle USA

Introduction to Enterprise Service Bus

SCA & SDO Implementations Open Source and Vendor Products

How to secure your Apache Camel deployment

Oracle SOA Suite 11g: Essential Concepts Student Guide

<Insert Picture Here> Building a Complex Web Application Using ADF and Siebel

Spoilt for Choice Which Integration Framework to choose? Mule ESB. Integration. Kai Wähner

SOA Best Practices (from monolithic to service-oriented)

FUSE-ESB4 An open-source OSGi based platform for EAI and SOA

TIBCO ActiveMatrix BPM SOA Concepts

Who are We Specialized. Recognized. Preferred. The right partner makes all the difference.

Improving performance for security enabled web services. - Dr. Colm Ó héigeartaigh

How To Integrate With An Enterprise Service Bus (Esb)

Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License

Service-Oriented Architecture and Software Engineering

Objectif. Participant. Prérequis. Pédagogie. Oracle SOA Suite 11g - Build Composite Applications. 5 Jours [35 Heures]

Spring 2011 Conference Sandanski, May 13th 15th 2011 Oracle SOA Suite 11g Rapid service integration and process automation with a no-coding approach

An Oracle White Paper March Guide to Implementing Application Integration Architecture on Oracle Service Bus

WHITE PAPER. Enabling predictive analysis in service oriented BPM solutions.

ActiveVOS Server Architecture. March 2009

Enterprise Service Bus Defined. Wikipedia says (07/19/06)

Government's Adoption of SOA and SOA Examples

Enterprise IT Architectures SOA Part 2

Real World Integration Challenges and Enterprise Service Bus (ESB)

Oracle Service Bus: - When to use, where to use and when not to use

Service Mediation. The Role of an Enterprise Service Bus in an SOA

OpenESB Standalone Edition V3.0 Web admin console

REST and SOAP Services with Apache CXF

SOA using Open ESB, BPEL, and NetBeans. Sang Shin Java Technology Evangelist Sun Microsystems, Inc.

Oracle Service Bus. Situation. Oracle Service Bus Primer. Product History and Evolution. Positioning. Usage Scenario

JBoss Enterprise SOA Platform Simple. Open. Affordable. Pierre Fricke, Director Product Line Mgmt. February 14, 2008

A SOA Based Framework for the Palestinian e-government Integrated Central Database

Creating new university management software by methodologies of Service Oriented Architecture (SOA)

Workflow/Business Process Management

Developing Service-Oriented Architecture Applications with OSGi

Technical Track Session Service-Oriented Architecture

IBM WebSphere ESB V6.0.1 Technical Product Overview

Integration in Action using JBoss Middleware. Ashokraj Natarajan - Cognizant

Transcription:

SOA SOA oder so ESB für Querdenker Produktlinien-Design mit ESB Peter Klotz Chief Architekt blue elephant systems GmbH (peter.klotz@blue-elephant-systems.com)

Agenda SOA & ESB Apache Servicemix & JBI ESB-Architektur & Mechanismen Design-Beispiele Erfahrungen im Produkt-Einsatz Fragen

SOA Aufbau von Applikationen aus Services Interaktion über Protokolle statt Methoden (XML, SOAP, MOM) Schnittstellen Metadata (WSDL) Service Orchestrierung Loose Coupling SOA ist ein Architektur-Prinzip ESB als SOA Infrastruktur/Implementierung

Integration Information Integration Projekte Integration Technology Integration Produkte

Main und andere Ströme Spring Main Stream POJO REST J2EE SOAP JBI ESB OSGi

Enterprise Service Bus Invocation: Synchrone and asynchrone Transport Protokolle Service Mapping (locating and binding) Routing: Addressierung, statisches/deterministisches, Content-based, Rules-based, Policy-based Routing Mediation: Adaptoren, Protokoll Transformation, Service Mapping Messaging: Message Processing, Message Transformation und Enhancement Process Choreography: Komplexe Business Prozesse Service Orchestration: Complex Event Processing: Event Interpretation, Korrelation, Pattern-Matching Quality of Service: Management: Koordination mehrerer Implementation-Services als ein einziger aggregierter Service Security (Encryption und Signing), Zuverlässiger Transport, Transaction Management Monitoring, Auditing, Logging, Metering, BAM

ESB Implementierungen Open-Source Servicemix (www.servicemix.org) OpenESB (open-esb.dev.java.net) Mule (mule.mulesource.org) JBoss ESB... Kommerziell BEA AquaLogic Oracle ESB...

Java Business Integration JBI (JSR-208) Normalized Message Router (NMR) Binding Component und Service Engine Container of Containers HTTP SOAP Email FTP JMS B CE P B CE P B CE P N M R Container z.b. Spring EP SE EP SE ESB Platform

JBI Deployment SU = Service Unit SA= Service Assembly SA SU1 SU2 SU3 SU4 SU Bean Bean Bean Bean LWC wrapper Deploy JBI Container SU1 SU2 JBI Komponenten LW C Servicemix: Spring Container SU3 EIP SU4 HTTP Zukunft: OSGi Bundles Keine SUZersplitterung

Message Exchange Patterns JBI Message Exchange Patterns (MEP) In-Out In-Only Robust-In-Only In-Optional-Out Binding Components definieren MEP Fehler-anfällig insb. In-Out async done() vergessen

Messaging Payload: XML Attachments (MIME-Messages) Standardisierte Formate (z.b. WS-Notification) Addressierung Protokoll-Header z.b. SOAP-Action, Properties, WS-A Request/Response Envelope Protokoll-Envelope (e.g. SOAP) Request/ResponseEnvelope Payload

ESB-Verteilung Node 1 RDBMS Node 2 ESB Instanz BC BC Kopplung BC Via NMR z.b. JMS-Flow Via Binding Components & Routing ESB Instanz XMLDB Node 3 BC ESB Instanz FS

Extern vs. Intern ESB EP B EP C ESB EP EP Web Service HTTP oder SOAP Web Applikation Adaptor Externes System z.b. Legacy

Deployment vs. CIs Service Assembly Deploy ESB Platform SA SU Deployment Configuration SU SU Service Unit Änderung Änderung SA SU SU ESB Platform Configuration DB SU Layer Configuration File

Realtime & Polling Realtime MOM Lokale Files oder FTP Polling und Writer WS File Poller SOAP HTTP B C B C B C ESB SE B C WA File Writer

ESB & Web Container Klassisch: ESB in Web Container z.b. JBoss Anders: Web Container in ESB z.b. Jetty in SM Web Container ESB ESB Web Container

Web Services & ESB SOAP Binding Component WSDL Generierung ESB als WS vs. einzelne Komponenten als WS SOAP BC Routing Authentication Authorization Adaptor Adaptor Komponente WSDL

Orchestrierung/Routing Orchestration describes the automated arrangement, coordination, and management of complex computer systems, middleware, and services. Statisch Java-Code Scripting (Groovy) Enterprise Integration Patterns (EIP) (Servicemix EIP, Apache Camel) Rules (Drools) Business Prozesse (BPM)

Routing Statisch: Routing an Komponenten EIP: Nur Routing BPEL: Routing + Daten Transformation EIP SU Components Service Camel SU BC SU Helper SU

Enterprise Integration Patterns http://www.enterpriseintegrationpatterns.com/ Achtung: einige nur In-Out oder nur In-Only Vorsicht beim Einsatz mancher Patterns z.b. Content Enricher Content-based Router Content Enricher Message Filter Transformer Recipient List Splitter/Aggregator Routing Slip Wire Tap

Beispiel: Wire Tap HauptPipeline In-Out Service Requests/Responses (In-Only) Custom SU File Writer Audit Request Logs Dead End

Authentifizierung Client-Authentifizierung nicht NUR für GUIs! Nutzung der ESB-Mechanismen Single Sign-On Frameworks versagen ESB XML Request auth Routing EP LDAP EP PA M proprietär EP

Programming in the Large Programm = Adaptors + Routing UNIX-Prinzip: 1 Tool pro Zweck Beispiel: Compare/Diff mit EIP Content='' Resolver Content!='' Transformer Objectclass is group Objectclass is primitive Differ

Beispiel II Beispiel: Indexing mit EIP Mass-Indexing (In-Out) Content='' Content!='' Resolver Transformer A Transformer B Delta-Indexing (In-Only) Indexer

Scripting Script-Komponenten Compilierung bei Deployment Spring Script Support z.b. auto script reload Scripts als ESB-Client Scripting für Routing Groovy: XML Slurper, Builder, GPath JSR-223: JRuby, JavaScript Issues: Deployment Cycle, Debugging

BPM & ESB Reines WS-BPEL: Web Service Orchestrierung Standardisiert (vs. EIP) BPEL Editoren (BPMN) ESB-basiertes BPM: Orchestrierung ohne Einschränkungen Web Service SOAP Business Process SOAP Web Service Legacy

BPM mit ESB Web Service Business Prozess PL PL ODE SU Spring Service Web Service PL Legacy ftp, http, file,...

Sync & Async Kernsystem: In-Out Synchron Custom-Orchestrierung: WS-BPEL Asynchron In-Only/ Robust-In-Only Orchestrierung Async Prozess System Sync Request/Response System In-Out oder In-Only EP Adaptor Sollte alle MEP handeln

Skalierbarkeit Große XML Dokumente vermeiden Streaming (Stax, kein DOM) Software-Loadbalancing z.b. mehrere Jetty-SUs, mehrfache Pipelines Prozeß-Split Pipeline Server Compute Server Daemon-Wrapper für Auto-Restart

Multi-Instanz-Installation JMS NMR Servicemix Instanz 1 Servicemix Instanz 2 1 Installation Per-Instanz Konfiguration Shared Konfiguration Servicemix Instanz 3

Produkt mit ESB Additive Service-Assemblies (Core + Produkt, Backend + Webapp) benowa, wanobe SAs Installer deployed Service-Assemblies Webapp (WA) Backend (BE) Produkt Y WA Y SA BE Y SA WA X SA BE X SA WA Core SA Produkt X BE Core SA

Fazit Geniale Modularisierung Lausige Kopplung Obacht auf Performance und Memory Komplexität

Fragen Fragen?