SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
Implementierung von
Enterprise Integration Patterns
            auf einem JBI ESB
Wer sind wir?

                            • Softwarearchitekten
                            • Entwicklung von
                              Integrationsplattformen
                              und -lösungen

                                                    martin.krasser@icw.de
                                http://www.icw.de   christian.ohr@icw.de



Martin Krasser, Christian Ohr, ICW AG                                       2
Überblick                        Roter Faden
         Beispiel: Kommunikation
         Im Krankenhaus


            Einsatzszenario für einen        Anwendungsbeispiel
            ESB                              für EIPs

                                                                    Herausforderungen +
                                                                    Lösungsansätze
                   ESB und JBI


                                            Apache ServiceMix und
                                            EIPs
Detail


     0 min                                                                      60 min

    Martin Krasser, Christian Ohr, ICW AG                                            3
Kommunikation im Krankenhaus
• Komplexe Domäne
     –   Medizinische Dokumentation
     –   Unterstützung von Routine-Arbeitsabläufen
     –   Verwaltung + Abrechnung von Leistungen
     –   Medizinische Spezialanwendungen
• Hoher Spezialisierungsgrad der Anwendungen
• Einsatz vieler unterschiedlicher Anwendungen
• Lose Systemkopplung: Datenkommunikation
  erfolgt vorwiegend ereignisgetrieben
• Seit ca. 1990 werden Kommunikationsserver
  (Interface Engines) eingesetzt
Martin Krasser, Christian Ohr, ICW AG                4
Ereignisse im Krankenhaus
      Krankenhaus-
                                        PACS           RIS      Archiv
   Informationssystem




           Labor                               Interface        Küche
                                                Engine

                                                    Aufnahme!

        Intensiv-                          Patienten-
      überwachung                         Management




Martin Krasser, Christian Ohr, ICW AG                                    5
Ereignisse im Krankenhaus
      Krankenhaus-
         Klinischer
                                        PACS           RIS   Archiv
   Informationssystem
        Arbeitsplatz

                            Auftrag

           Labor                               Interface     Küche
                                                Engine



        Intensiv-                          Patienten-
      überwachung                         Management




Martin Krasser, Christian Ohr, ICW AG                                 6
Ereignisse im Krankenhaus
      Krankenhaus-
         Klinischer
                                        PACS           RIS   Archiv
   Informationssystem
        Arbeitsplatz




           Labor                               Interface     Küche
                             Ergebnis           Engine



        Intensiv-                          Patienten-
      überwachung                         Management




Martin Krasser, Christian Ohr, ICW AG                                 7
Gründe für den Einsatz von
               Interface Engines

• Entkopplung von Anwendungen
• Im Vergleich zu Point-to-Point: Reduktion
  der Schnittstellen von n*(n-1) auf 2n
• Zentrales Schnittstellenmanagement/-
  überwachung
• Erleichtert die Migration von Schnittstellen

Martin Krasser, Christian Ohr, ICW AG            8
Sektorenübergreifende
                   Kommunikation




   Master                               Interface          Verteilte
   Patient                               Engine          Patientenakte
    Index



                                                      Reha-
             Hausarzt                   Facharzt
                                                    Einrichtung

Martin Krasser, Christian Ohr, ICW AG                                    9
Anwendungsbeispiel

                                 A              A‘




   Master
   Patient
    Index                B


                                             Enterprise Service Bus (ESB)
                 …                      B‘   als Interface Engine


Martin Krasser, Christian Ohr, ICW AG                                       10
Enterprise Service Bus
• Kernfunktionalitäten
     –   Messaging
     –   Routing
     –   Transformation
     –   Protokolladapter
     –   System Management und Monitoring
     –   …

• Weitere Funktionalitäten
     –   Prozesssteuerung (BPM)
     –   Complex Event Processing (CEP)
     –   Event Stream Processing (ESP)
     –   …


Martin Krasser, Christian Ohr, ICW AG       11
Enterprise Service Bus
• Plugin Architektur
     –     Integrationskomponenten sind Plugins
     –     Projektspezifische Konfiguration
     –     Erweiterungsmechanismus
     –     Java Business Integration (JSR 208)
• Verteilte Bus-Architektur




 Plugins




Martin Krasser, Christian Ohr, ICW AG             12
Java Business Integration (JBI)
• Java Standard zur Strukturierung von
  Integrationssystemen
     – Plugin Architektur für Integrationskomponenten
     – Integrationskomponenten kommunizieren über standardisierte
       Schnittstellen


• Interoperabilität zwischen Integrationskomponenten
  unterschiedlicher Hersteller

• Richtet sich an Hersteller von Integrationsplattformen
  und Integrationskomponenten


Martin Krasser, Christian Ohr, ICW AG                               13
Java Business Integration (JBI)

  JBI Komponente (BC)         JBI Umgebung         JBI Komponente
                                                   • BC = Binding Component
       EP                                          • SE = Service Engine
       WSDL


            DC                               EP    Service Endpoint

                        NMR                        Externer Service

            DC                                     Message Exchange
                                             DC    Delivery Channel
       EP        EP
       WSDL      WSDL

  JBI Komponente (SE)                        NMR   Normalized Message Router




Martin Krasser, Christian Ohr, ICW AG                                         14
Apache ServiceMix
• Enterprise Service Bus auf JBI Basis
     – Mehr als eine reine JBI Referenzimplementierung
     – Cluster Support, eigene JBI Komponenten …
     – Spezielle Unterstützung für Integration Patterns

• Plattform zur Entwicklung von
     – Integrationslösungen (Anwendungs-Entwickler)
     – Integrationskomponenten (Plattform-Entwickler)


• Apache Top Level Projekt
     – Aktuelle Version: 3.2
     – Apache 2.0 Lizenz

Martin Krasser, Christian Ohr, ICW AG                     15
Apache ServiceMix

                    sm-http         sm-jms       sm-file   …   Binding Components
JBI
Komponenten
                     sm-eip       sm-drools      ODE       …   Service Engines


                                                               Delivery Channel
JBI Umgebung                      ServiceMix Core              Norm. Message
                                                               Router Management
                                                               (JMX)
                                                               Message Broker
                                      ActiveMQ                 Cluster Support




  Martin Krasser, Christian Ohr, ICW AG                                          16
sm-eip Service Engine
• Enterprise Integration Patterns

     –   Filter
     –   Content-based Router
     –   Recipient List
     –   Splitter and Aggregator
     –   Content Enricher
     –   Resequencer
     –   …

Martin Krasser, Christian Ohr, ICW AG   17
sm-eip Service Engine
  • Implementierung von EIPs
        –   Konfiguration mit Spring/XBean XML
        –   Verpacken in Service Unit bzw. Assembly
        –   Deployment des Service Assembly
        –   Spring Beans als JBI Service Endpoints erreichbar

<eip:content-based-router service="msb:v3-router" ...>
 <eip:rules>
  <eip:routing-rule>
                                                                                   sm-eip
   <eip:predicate>                                            <<deploy>>
    <eip:xpath-predicate xpath="count(//items/item) > 0" />
   </eip:predicate>
                                                               Service
   <eip:target>
                                                              Assembly
    <eip:exchange-target service="msb:MPI" />
   </eip:target>
  </eip:routing-rule>
 </eip:rules>
</eip:content-based-router>                                     maven-jbi-plugin



  Martin Krasser, Christian Ohr, ICW AG                                                 18
Anwendungsbeispiel
• Nachrichtenstandards, Formate und Transport
                                    HL7 v2    HL7 v2‘
                                        FTP    MLLP




       Master           HL7 v3
       Patient
                         HTTP
        Index


                                   SOAP/
                                   HTTP
                    …
                                   HL7 v3‘


Martin Krasser, Christian Ohr, ICW AG                   19
Nachrichtenstandards
                    in der Medizin
• Das Schöne an Standards ist …
     – HL7 v2
     – HL7 v3
     – EDIFACT (§301 SGB V)
     – DICOM, ACR/NEMA
     – ADT, BDT, LDT
     – Papier



Martin Krasser, Christian Ohr, ICW AG   20
HL7 v2
•    „HL7 bietet Interoperabilität zwischen Krankenhausinformationssystemen
     (KIS), Praxisverwaltungssystemen (PVS), Laborinformationsystemen (LIMS),
     Systemen zur Leistungsabrechnung sowie Systemen, die als
     Elektronische Patientenakte fungieren...“ (http://de.wikipedia.org/wiki/HL7)
•    Führend in krankenhausinterner Kommunikation

     MSH|^~&|SAP-ISH|ABC|||20040805152637||ADT^A01|123456|T|2.2|||ER ↵
     EVN|A01|20040805152637 ↵
     PID|1||79471||Müller^Hans|Müller|19400101|M|||Am Domplatz
     1^^Köln^NW^57000^DE^H||+4962218725683|||S|||111-11-1111||||Köln ↵
     NK1|1|Möller^Gudrun|EMC|Hauptstraße 23^^Köln^NW^57000^DE|+4922239834 ↵
     PV1|1|I|ISKA^13^4|R||||823745217||||||||N|||
     79237645|||||||||||||||||||||||||20040805000000 ↵
     ZBE|79237645~001|20040805000000||INSERT ↵



                                            http://www.hl7.de/standard/wasist_hl7.php


    Martin Krasser, Christian Ohr, ICW AG                                               21
HL7 v3
• Modellierungs- und Entwicklungsprozesse sind
  integraler Bestandteil
• Reference Information Model ist Grundlage für
  das Datenmodell
• Konsistent, komplex, formal, erweiterbar
• Syntaxunabhängige Modelle, XML ist
  bevorzugte Modellimplementierung
• Immer noch ereignisgetrieben


Martin Krasser, Christian Ohr, ICW AG             22
HL7 v3 Beispiel
         <?xml version="1.0" encoding="UTF-8"?>

         <PRPA_IN201101 ITSVersion="XML_1.0" xmlns="urn:hl7-org:v3"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="urn:hl7-org:v3 PRPA_IN201101.xsd">
           <realmCode code="DE"></realmCode>
           <id root="2.16.840.1.113883.3.37.4.1.1.2.411.4" extension="255166268"></id>
           <creationTime value="20060714140700"></creationTime>
           <versionCode code="V3-2006-05"></versionCode>
           <interactionId extension="PRPA_IN201101"
              root="2.16.840.1.113883.1.6"></interactionId>
           <processingCode code="P"></processingCode>
           <processingModeCode code="T"></processingModeCode>



                                   … ca. 100 Zeilen …
                  <custodian>
                    <assignedEntity>
                      <id root="2.16.840.1.113883.3.37.4.1.1.2.411"></id>
                    </assignedEntity>
                 </custodian>
               </registrationEvent>
             </subject>
           </controlActProcess>
         </PRPA_IN201101>




Martin Krasser, Christian Ohr, ICW AG                                                    23
HL7 Transformation
• ServiceMix bietet „nur“ Basistechnologie
  (z.B. XSLT)
• Domänenspezifische Komponenten auf
  höherem Abstraktionsniveau notwendig
     – HL7 v2  HL7 v3
     – MLLP-Protokoll ist HL7-spezifisch, daher
       ebenfalls keine Unterstützung
• ServiceMix-Erweiterungen notwendig

Martin Krasser, Christian Ohr, ICW AG             24
ServiceMix Erweiterungen

              …               sm-eip       sm-jms                   …

                                                                     ServiceMix

     - Abstract Router
     - Abstract Transformer
     - Resequencer            ext-eip      ext-jms               ext-mllp
     - InOut/InOnly Bridge
     …




      - HL7 v2 Router                   - Transactional   - MLLP Consumer Endpoint
                                          Consumer        - MLLP Provider Endpoint
      - HL7 v2 Transformer    ext-hl7     Enpoint
      …
                                                                Erweiterungen


Martin Krasser, Christian Ohr, ICW AG                                                25
ServiceMix Erweiterungen
• ext-hl7
     – Domänenspezifische Implementierung von Patterns
     – Konfiguration auf höherem Abstraktionsniveau
     – Verwendung alternativer Technologien (Velocity …)


• ext-eip
     – JBI Abstraktionsschicht
     – Development Kit für Komponentenentwickler
     – Testumgebung für EIP-Komponenten

Martin Krasser, Christian Ohr, ICW AG                      26
Herausforderungen
• Wie macht man Nachrichtentransformation
     – Skalierbar?
     – Ausfallsicher?
     – Wartbar?
     – Nachvollziehbar?
     – Flexibel?


• d.h. geeignet für den Routineeinsatz?
Martin Krasser, Christian Ohr, ICW AG     27
Transformation ist auf den ersten
            Blick einfach



       D                                   D

    HL7 V2                              HL7 V3




Martin Krasser, Christian Ohr, ICW AG            28
… auf den zweiten Blick …



       D                 ?                                                 D

    HL7 V2                                                              HL7 V3
                    Validierung         Transformation   Auslieferung




Martin Krasser, Christian Ohr, ICW AG                                            29
… auf den dritten Blick …



      D                                    D

   HL7 v2                               HL7 v3




Martin Krasser, Christian Ohr, ICW AG          30
Notation
        Modell                          JBI        Beschreibung
                                                   JBI Service Endpoint
                                                   (Router, Transformer …)
                                              SE

                                                   JBI Binding Endpoint
                                                   (HTTP, JMS …)
                                              BC

                                                   MessageExchange über NMR
                                        DC
                                    NMR
                                        DC

                                                   Externer Dienst




Martin Krasser, Christian Ohr, ICW AG                                         31
Validierung
                       File

      D
                 sm-file
   HL7 V2

                      HTTP                Validator
                                                  ?
       D                                                D
                 sm-http                ext-hl7
    HL7 V2                                             HL7 V2
                      MLLP
                                                  !
       D
                 ext-mllp                  Error log
    HL7 V2


Martin Krasser, Christian Ohr, ICW AG                           32
Transformation
                                        V2_A01 to     Reference
                                        Reference     to V3_A01
               Content-based
                  Router
                                        ext-hl7       ext-hl7

   D                                                                D
               ext-hl7

HL7 V2                                                             HL7 V3
                                        V2_A03 to     Reference
                                        Reference     to V3_A03



                                                  !         !
                                          Error log    Error log
Martin Krasser, Christian Ohr, ICW AG                                   33
Auslieferung
                  ?
             Resequencer
                                      Recipient
                                        List
                                                      sync
                                                              JMS      sync
                                                                                   HTTP


                              sync                                              sm-http
  D
              sm-eip                 ext-hl7                  JMS               SOAP/HTTP
HL7 V3                                                 sync            sync


                                                                                sm-http



                                                               Ext.
                                                      JMS     Queue     JMS
                                               sync                                 sync

                                                  sm-jms              ext-jms


Martin Krasser, Christian Ohr, ICW AG                                                      34
Erhaltung der Nachrichtensequenz
• Zuweisung von Sequenznummern
     – Berücksichtigung von Splits
• Stream-Processing Resequencer
     – Keine Batch-Größen bekannt
     – Timeout-basierter Algorithmus (Zeitfenster)
• Auslieferung
     – Synchron über NMR
     – Pufferung (JMS) unter Beibehaltung der Ordnung




                                         Parallele
             SEQ
                                        Verarbeitung   SEQ




Martin Krasser, Christian Ohr, ICW AG                        35
System Management
  • Monitoring
       – JMX Infrastruktur von ServiceMix und ActiveMQ
  • Beispiel: JMS Queue (Auslieferung)


Enqueue Count                                            Queue Size




  Martin Krasser, Christian Ohr, ICW AG                      36
System Management
• Auditing
     – Speicherung eingehender und ausgehender Nachrichten


• Statistik
     – Verarbeitungsdauer, Nachrichtendurchsatz …

                       Anwendung


                                                              Wire Tap




                            store                   confirm


                                    Message Store


Martin Krasser, Christian Ohr, ICW AG                                    37
System Management
   • Re-play von Nachrichten
   • Filterung von Duplikaten

Anwendung
                                        Duplicate
                                         Filter




                              status query
            store
                              confirm

                    Message Store

   Martin Krasser, Christian Ohr, ICW AG            38
Bidirektionale Kommunikation
• Wiederverwendung von Bausteinen, die nur
  unidirektionale Kommunikation unterstützten
• Neues Muster: InOut – InOnly Bridge


                                   InOnly        InOnly
                                             …
               InOut                                       InOut
                                    InOnly        InOnly
                                             …




Martin Krasser, Christian Ohr, ICW AG                              39
Erfahrungen
•   Anwendungsentwicklung
     – 30% Konfiguration existierender JBI-Komponenten
     – 70% Neu/Weiterentwicklung von JBI-Komponenten
     – Bessere Wartbarkeit durch domänenspezifische Patterns

•   Komponentenentwicklung
     – Komplexität durch JBI API (4 MEPs, synchron, asynchron …)
     – JBI-Abstraktionsschicht zur Vermeidung häufiger Fehler

•   ServiceMix
     – Stabile und performante JBI Plattform
     – Unterstützung von Spring bzw. XBean
     – Mangelhafte Dokumentation

•   System Management
     – Gute JMX Infrastruktur von ServiceMix und ActiveMQ
     – Einfache und effiziente Möglichkeiten zur Erweiterung

Martin Krasser, Christian Ohr, ICW AG                              40
Vielen Dank für Ihre Aufmerksamkeit!

                                        Fragen?


                                             martin.krasser@icw.de
                                             christian.ohr@icw.de



Martin Krasser, Christian Ohr, ICW AG                                41
Konsistente Datenhaltung
•    Verteiltes Transaktionsmanagement
      – Synchrone Kommunikation
      – Asynchrone Kommunikation
•    Unterstützung durch ServiceMix
      – XA Transaktionsmanager (Geronimo)
      – NMR als XA Resource (ActiveMQ)

                                                  XA Transaction


    synchron:      NMR                              NMR                               NMR




                               XA Transaction 1                    XA Transaction 2

asynchron:         NMR                              NMR                               NMR


Martin Krasser, Christian Ohr, ICW AG                                                       42
JBI Enterprise Service Bus
•   Plugin Schnittstellen konform zu JBI
                                                             Externer Dienst

•   Plugins sind
     – Service Engines                                       Binding Component
     – Binding Components
                                                             Delivery Channel

•   Nachrichtenaustausch über
     – NMR                                                   Normalized
                                                   JBI ESB   Message
     – Delivery Channel                                      Router (NMR)


•   Verteilung wird von JBI nicht          Service Engine
    behandelt



Martin Krasser, Christian Ohr, ICW AG                                    43
Weitere EIP Unterstützung
     – Apache ODE
          • Ausführung von WS-BPEL Prozessdefinitionen


     – sm-drools
          • Routing mit JBoss Drools (Rule Engine)


…    – sm-bean
          • POJO Programmiermodell


Martin Krasser, Christian Ohr, ICW AG                    44

Weitere ähnliche Inhalte

Andere mochten auch

Présentation What Heroes Wear - Paris Dauphine
Présentation What Heroes Wear - Paris DauphinePrésentation What Heroes Wear - Paris Dauphine
Présentation What Heroes Wear - Paris DauphineNathanaël Ghisalberti
 
Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...
Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...
Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...co2online gem. GmbH
 
Pages From 51 62
Pages From 51 62Pages From 51 62
Pages From 51 62guest6b685
 
Islam i Europa - en trussel mod det europæiske demokrati?
Islam i Europa - en trussel mod det europæiske demokrati?Islam i Europa - en trussel mod det europæiske demokrati?
Islam i Europa - en trussel mod det europæiske demokrati?Rasmus Aage
 
Pulse - Le Secteur des SSII
Pulse - Le Secteur des SSIIPulse - Le Secteur des SSII
Pulse - Le Secteur des SSIIJLL France
 
Boostez votre developpement avec les reseaux sociaux
Boostez votre developpement avec les reseaux sociauxBoostez votre developpement avec les reseaux sociaux
Boostez votre developpement avec les reseaux sociauxCatherine Epstein
 
Tpe Vorstellung De
Tpe Vorstellung DeTpe Vorstellung De
Tpe Vorstellung Deluisdiddl
 
Christoph Tschohl - Open Government Data aus Menschenrechtsperspektive
Christoph Tschohl - Open Government Data aus MenschenrechtsperspektiveChristoph Tschohl - Open Government Data aus Menschenrechtsperspektive
Christoph Tschohl - Open Government Data aus MenschenrechtsperspektiveSemantic Web Company
 
Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...
Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...
Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...Turbine Kreuzberg GmbH
 
Compte rendu du conseil municipal du 19 février 2015
Compte rendu du conseil municipal du 19 février 2015Compte rendu du conseil municipal du 19 février 2015
Compte rendu du conseil municipal du 19 février 2015villedebegles
 
Hymnes orphiques (traduction leconte de lisle) - http://www.projethomere.com
Hymnes orphiques (traduction leconte de lisle) - http://www.projethomere.comHymnes orphiques (traduction leconte de lisle) - http://www.projethomere.com
Hymnes orphiques (traduction leconte de lisle) - http://www.projethomere.comHélène Kémiktsi
 

Andere mochten auch (19)

Présentation What Heroes Wear - Paris Dauphine
Présentation What Heroes Wear - Paris DauphinePrésentation What Heroes Wear - Paris Dauphine
Présentation What Heroes Wear - Paris Dauphine
 
Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...
Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...
Servicemanagementsysteme in der Kältetechnik (Dipl.-Ing. Gunter Schill, Dresd...
 
Extranas Imagenes
Extranas ImagenesExtranas Imagenes
Extranas Imagenes
 
Martin Schmitt
Martin SchmittMartin Schmitt
Martin Schmitt
 
Pages From 51 62
Pages From 51 62Pages From 51 62
Pages From 51 62
 
Islam i Europa - en trussel mod det europæiske demokrati?
Islam i Europa - en trussel mod det europæiske demokrati?Islam i Europa - en trussel mod det europæiske demokrati?
Islam i Europa - en trussel mod det europæiske demokrati?
 
Zehn Thesen zum Thema Innovation
Zehn Thesen zum Thema InnovationZehn Thesen zum Thema Innovation
Zehn Thesen zum Thema Innovation
 
Pulse - Le Secteur des SSII
Pulse - Le Secteur des SSIIPulse - Le Secteur des SSII
Pulse - Le Secteur des SSII
 
Datenbanken
DatenbankenDatenbanken
Datenbanken
 
T0 D0 S
T0 D0 ST0 D0 S
T0 D0 S
 
Le judo
Le judoLe judo
Le judo
 
Boostez votre developpement avec les reseaux sociaux
Boostez votre developpement avec les reseaux sociauxBoostez votre developpement avec les reseaux sociaux
Boostez votre developpement avec les reseaux sociaux
 
Le mahampy
Le mahampyLe mahampy
Le mahampy
 
Tpe Vorstellung De
Tpe Vorstellung DeTpe Vorstellung De
Tpe Vorstellung De
 
Christoph Tschohl - Open Government Data aus Menschenrechtsperspektive
Christoph Tschohl - Open Government Data aus MenschenrechtsperspektiveChristoph Tschohl - Open Government Data aus Menschenrechtsperspektive
Christoph Tschohl - Open Government Data aus Menschenrechtsperspektive
 
Design
DesignDesign
Design
 
Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...
Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...
Content Marketing Tuesday: Dein Content knallt, doch keiner hörts - Erfolgsme...
 
Compte rendu du conseil municipal du 19 février 2015
Compte rendu du conseil municipal du 19 février 2015Compte rendu du conseil municipal du 19 février 2015
Compte rendu du conseil municipal du 19 février 2015
 
Hymnes orphiques (traduction leconte de lisle) - http://www.projethomere.com
Hymnes orphiques (traduction leconte de lisle) - http://www.projethomere.comHymnes orphiques (traduction leconte de lisle) - http://www.projethomere.com
Hymnes orphiques (traduction leconte de lisle) - http://www.projethomere.com
 

Ähnlich wie Implementierung von Enterprise Integration Patterns auf einem JBI ESB

OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...NETWAYS
 
Data Is The New Oil
Data Is The New OilData Is The New Oil
Data Is The New OilParStream
 
ISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_OchsnerISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_OchsnerInfoSocietyDays
 
ISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_OchsnerISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_OchsnerInfoSocietyDays
 
Pragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das WesentlichePragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das Wesentliche1&1
 
Microservices - Was EAs zu Microservices wissen sollten
Microservices - Was EAs zu Microservices wissen solltenMicroservices - Was EAs zu Microservices wissen sollten
Microservices - Was EAs zu Microservices wissen solltenJan Thielscher
 
BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...
BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...
BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...BATbern
 
Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...
Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...
Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...Business Intelligence Research
 
Green IT BB Award 2012 - Bundesagentur für Arbeit - RZ-Konsolidierung
Green IT BB Award 2012 - Bundesagentur für Arbeit - RZ-KonsolidierungGreen IT BB Award 2012 - Bundesagentur für Arbeit - RZ-Konsolidierung
Green IT BB Award 2012 - Bundesagentur für Arbeit - RZ-KonsolidierungNetzwerk GreenIT-BB
 
Die Bedeutung der Diagnose in der Fahrzeugentwicklung
Die Bedeutung der Diagnose in der FahrzeugentwicklungDie Bedeutung der Diagnose in der Fahrzeugentwicklung
Die Bedeutung der Diagnose in der FahrzeugentwicklungSchleissheimer GmbH
 
Continuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeContinuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeKremer Consulting
 
Das modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTigges
Das modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTiggesDas modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTigges
Das modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTiggesOPITZ CONSULTING Deutschland
 
Fraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativFraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativFraunhofer AISEC
 
Überblick zum Industrial Data Space
Überblick zum Industrial Data SpaceÜberblick zum Industrial Data Space
Überblick zum Industrial Data SpaceBoris Otto
 
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...NETWAYS
 
SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...
SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...
SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...Leiter AK Software - Dr. Schönefeld
 

Ähnlich wie Implementierung von Enterprise Integration Patterns auf einem JBI ESB (20)

Innovation in der Instandhaltung - Motor für die Zukunft
Innovation in der Instandhaltung - Motor für die ZukunftInnovation in der Instandhaltung - Motor für die Zukunft
Innovation in der Instandhaltung - Motor für die Zukunft
 
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
 
Data Is The New Oil
Data Is The New OilData Is The New Oil
Data Is The New Oil
 
ISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_OchsnerISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_Ochsner
 
ISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_OchsnerISD2016_SolutionC_Erwin_Ochsner
ISD2016_SolutionC_Erwin_Ochsner
 
imatics & ModelLabs Integration
imatics & ModelLabs Integrationimatics & ModelLabs Integration
imatics & ModelLabs Integration
 
Pragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das WesentlichePragmatic SOA - Beschränken auf das Wesentliche
Pragmatic SOA - Beschränken auf das Wesentliche
 
Microservices - Was EAs zu Microservices wissen sollten
Microservices - Was EAs zu Microservices wissen solltenMicroservices - Was EAs zu Microservices wissen sollten
Microservices - Was EAs zu Microservices wissen sollten
 
BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...
BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...
BAT40 Mobiliar Koller Mösching AI@Mobiliar Wie AI-Services in der Mobiliar ge...
 
CWMC Insights 2020|11 - Technische Grundlagen zur Industrie 4.0 Umsetzung
CWMC Insights 2020|11 - Technische Grundlagen zur Industrie 4.0 UmsetzungCWMC Insights 2020|11 - Technische Grundlagen zur Industrie 4.0 Umsetzung
CWMC Insights 2020|11 - Technische Grundlagen zur Industrie 4.0 Umsetzung
 
Vortrag linux tag
Vortrag linux tagVortrag linux tag
Vortrag linux tag
 
Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...
Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...
Business Intelligence zur Prozessoptimierung im Krankenhausmanagement - Volke...
 
Green IT BB Award 2012 - Bundesagentur für Arbeit - RZ-Konsolidierung
Green IT BB Award 2012 - Bundesagentur für Arbeit - RZ-KonsolidierungGreen IT BB Award 2012 - Bundesagentur für Arbeit - RZ-Konsolidierung
Green IT BB Award 2012 - Bundesagentur für Arbeit - RZ-Konsolidierung
 
Die Bedeutung der Diagnose in der Fahrzeugentwicklung
Die Bedeutung der Diagnose in der FahrzeugentwicklungDie Bedeutung der Diagnose in der Fahrzeugentwicklung
Die Bedeutung der Diagnose in der Fahrzeugentwicklung
 
Continuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeContinuous Delivery as a Way of Life
Continuous Delivery as a Way of Life
 
Das modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTigges
Das modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTiggesDas modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTigges
Das modulare DWH-Modell - DOAG SIG BI/DWH 2010 - OPITZ CONSULTING - ArnoTigges
 
Fraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativFraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativ
 
Überblick zum Industrial Data Space
Überblick zum Industrial Data SpaceÜberblick zum Industrial Data Space
Überblick zum Industrial Data Space
 
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...
OSMC 2011 | Monitoring "wer kennt wen" mit free and open source software by J...
 
SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...
SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...
SPC einmal anders: Antwortverhalten von IT Anwendungen statistisch überwachen...
 

Implementierung von Enterprise Integration Patterns auf einem JBI ESB

  • 1. Implementierung von Enterprise Integration Patterns auf einem JBI ESB
  • 2. Wer sind wir? • Softwarearchitekten • Entwicklung von Integrationsplattformen und -lösungen martin.krasser@icw.de http://www.icw.de christian.ohr@icw.de Martin Krasser, Christian Ohr, ICW AG 2
  • 3. Überblick Roter Faden Beispiel: Kommunikation Im Krankenhaus Einsatzszenario für einen Anwendungsbeispiel ESB für EIPs Herausforderungen + Lösungsansätze ESB und JBI Apache ServiceMix und EIPs Detail 0 min 60 min Martin Krasser, Christian Ohr, ICW AG 3
  • 4. Kommunikation im Krankenhaus • Komplexe Domäne – Medizinische Dokumentation – Unterstützung von Routine-Arbeitsabläufen – Verwaltung + Abrechnung von Leistungen – Medizinische Spezialanwendungen • Hoher Spezialisierungsgrad der Anwendungen • Einsatz vieler unterschiedlicher Anwendungen • Lose Systemkopplung: Datenkommunikation erfolgt vorwiegend ereignisgetrieben • Seit ca. 1990 werden Kommunikationsserver (Interface Engines) eingesetzt Martin Krasser, Christian Ohr, ICW AG 4
  • 5. Ereignisse im Krankenhaus Krankenhaus- PACS RIS Archiv Informationssystem Labor Interface Küche Engine Aufnahme! Intensiv- Patienten- überwachung Management Martin Krasser, Christian Ohr, ICW AG 5
  • 6. Ereignisse im Krankenhaus Krankenhaus- Klinischer PACS RIS Archiv Informationssystem Arbeitsplatz Auftrag Labor Interface Küche Engine Intensiv- Patienten- überwachung Management Martin Krasser, Christian Ohr, ICW AG 6
  • 7. Ereignisse im Krankenhaus Krankenhaus- Klinischer PACS RIS Archiv Informationssystem Arbeitsplatz Labor Interface Küche Ergebnis Engine Intensiv- Patienten- überwachung Management Martin Krasser, Christian Ohr, ICW AG 7
  • 8. Gründe für den Einsatz von Interface Engines • Entkopplung von Anwendungen • Im Vergleich zu Point-to-Point: Reduktion der Schnittstellen von n*(n-1) auf 2n • Zentrales Schnittstellenmanagement/- überwachung • Erleichtert die Migration von Schnittstellen Martin Krasser, Christian Ohr, ICW AG 8
  • 9. Sektorenübergreifende Kommunikation Master Interface Verteilte Patient Engine Patientenakte Index Reha- Hausarzt Facharzt Einrichtung Martin Krasser, Christian Ohr, ICW AG 9
  • 10. Anwendungsbeispiel A A‘ Master Patient Index B Enterprise Service Bus (ESB) … B‘ als Interface Engine Martin Krasser, Christian Ohr, ICW AG 10
  • 11. Enterprise Service Bus • Kernfunktionalitäten – Messaging – Routing – Transformation – Protokolladapter – System Management und Monitoring – … • Weitere Funktionalitäten – Prozesssteuerung (BPM) – Complex Event Processing (CEP) – Event Stream Processing (ESP) – … Martin Krasser, Christian Ohr, ICW AG 11
  • 12. Enterprise Service Bus • Plugin Architektur – Integrationskomponenten sind Plugins – Projektspezifische Konfiguration – Erweiterungsmechanismus – Java Business Integration (JSR 208) • Verteilte Bus-Architektur Plugins Martin Krasser, Christian Ohr, ICW AG 12
  • 13. Java Business Integration (JBI) • Java Standard zur Strukturierung von Integrationssystemen – Plugin Architektur für Integrationskomponenten – Integrationskomponenten kommunizieren über standardisierte Schnittstellen • Interoperabilität zwischen Integrationskomponenten unterschiedlicher Hersteller • Richtet sich an Hersteller von Integrationsplattformen und Integrationskomponenten Martin Krasser, Christian Ohr, ICW AG 13
  • 14. Java Business Integration (JBI) JBI Komponente (BC) JBI Umgebung JBI Komponente • BC = Binding Component EP • SE = Service Engine WSDL DC EP Service Endpoint NMR Externer Service DC Message Exchange DC Delivery Channel EP EP WSDL WSDL JBI Komponente (SE) NMR Normalized Message Router Martin Krasser, Christian Ohr, ICW AG 14
  • 15. Apache ServiceMix • Enterprise Service Bus auf JBI Basis – Mehr als eine reine JBI Referenzimplementierung – Cluster Support, eigene JBI Komponenten … – Spezielle Unterstützung für Integration Patterns • Plattform zur Entwicklung von – Integrationslösungen (Anwendungs-Entwickler) – Integrationskomponenten (Plattform-Entwickler) • Apache Top Level Projekt – Aktuelle Version: 3.2 – Apache 2.0 Lizenz Martin Krasser, Christian Ohr, ICW AG 15
  • 16. Apache ServiceMix sm-http sm-jms sm-file … Binding Components JBI Komponenten sm-eip sm-drools ODE … Service Engines Delivery Channel JBI Umgebung ServiceMix Core Norm. Message Router Management (JMX) Message Broker ActiveMQ Cluster Support Martin Krasser, Christian Ohr, ICW AG 16
  • 17. sm-eip Service Engine • Enterprise Integration Patterns – Filter – Content-based Router – Recipient List – Splitter and Aggregator – Content Enricher – Resequencer – … Martin Krasser, Christian Ohr, ICW AG 17
  • 18. sm-eip Service Engine • Implementierung von EIPs – Konfiguration mit Spring/XBean XML – Verpacken in Service Unit bzw. Assembly – Deployment des Service Assembly – Spring Beans als JBI Service Endpoints erreichbar <eip:content-based-router service="msb:v3-router" ...> <eip:rules> <eip:routing-rule> sm-eip <eip:predicate> <<deploy>> <eip:xpath-predicate xpath="count(//items/item) > 0" /> </eip:predicate> Service <eip:target> Assembly <eip:exchange-target service="msb:MPI" /> </eip:target> </eip:routing-rule> </eip:rules> </eip:content-based-router> maven-jbi-plugin Martin Krasser, Christian Ohr, ICW AG 18
  • 19. Anwendungsbeispiel • Nachrichtenstandards, Formate und Transport HL7 v2 HL7 v2‘ FTP MLLP Master HL7 v3 Patient HTTP Index SOAP/ HTTP … HL7 v3‘ Martin Krasser, Christian Ohr, ICW AG 19
  • 20. Nachrichtenstandards in der Medizin • Das Schöne an Standards ist … – HL7 v2 – HL7 v3 – EDIFACT (§301 SGB V) – DICOM, ACR/NEMA – ADT, BDT, LDT – Papier Martin Krasser, Christian Ohr, ICW AG 20
  • 21. HL7 v2 • „HL7 bietet Interoperabilität zwischen Krankenhausinformationssystemen (KIS), Praxisverwaltungssystemen (PVS), Laborinformationsystemen (LIMS), Systemen zur Leistungsabrechnung sowie Systemen, die als Elektronische Patientenakte fungieren...“ (http://de.wikipedia.org/wiki/HL7) • Führend in krankenhausinterner Kommunikation MSH|^~&|SAP-ISH|ABC|||20040805152637||ADT^A01|123456|T|2.2|||ER ↵ EVN|A01|20040805152637 ↵ PID|1||79471||Müller^Hans|Müller|19400101|M|||Am Domplatz 1^^Köln^NW^57000^DE^H||+4962218725683|||S|||111-11-1111||||Köln ↵ NK1|1|Möller^Gudrun|EMC|Hauptstraße 23^^Köln^NW^57000^DE|+4922239834 ↵ PV1|1|I|ISKA^13^4|R||||823745217||||||||N||| 79237645|||||||||||||||||||||||||20040805000000 ↵ ZBE|79237645~001|20040805000000||INSERT ↵ http://www.hl7.de/standard/wasist_hl7.php Martin Krasser, Christian Ohr, ICW AG 21
  • 22. HL7 v3 • Modellierungs- und Entwicklungsprozesse sind integraler Bestandteil • Reference Information Model ist Grundlage für das Datenmodell • Konsistent, komplex, formal, erweiterbar • Syntaxunabhängige Modelle, XML ist bevorzugte Modellimplementierung • Immer noch ereignisgetrieben Martin Krasser, Christian Ohr, ICW AG 22
  • 23. HL7 v3 Beispiel <?xml version="1.0" encoding="UTF-8"?> <PRPA_IN201101 ITSVersion="XML_1.0" xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:hl7-org:v3 PRPA_IN201101.xsd"> <realmCode code="DE"></realmCode> <id root="2.16.840.1.113883.3.37.4.1.1.2.411.4" extension="255166268"></id> <creationTime value="20060714140700"></creationTime> <versionCode code="V3-2006-05"></versionCode> <interactionId extension="PRPA_IN201101" root="2.16.840.1.113883.1.6"></interactionId> <processingCode code="P"></processingCode> <processingModeCode code="T"></processingModeCode> … ca. 100 Zeilen … <custodian> <assignedEntity> <id root="2.16.840.1.113883.3.37.4.1.1.2.411"></id> </assignedEntity> </custodian> </registrationEvent> </subject> </controlActProcess> </PRPA_IN201101> Martin Krasser, Christian Ohr, ICW AG 23
  • 24. HL7 Transformation • ServiceMix bietet „nur“ Basistechnologie (z.B. XSLT) • Domänenspezifische Komponenten auf höherem Abstraktionsniveau notwendig – HL7 v2  HL7 v3 – MLLP-Protokoll ist HL7-spezifisch, daher ebenfalls keine Unterstützung • ServiceMix-Erweiterungen notwendig Martin Krasser, Christian Ohr, ICW AG 24
  • 25. ServiceMix Erweiterungen … sm-eip sm-jms … ServiceMix - Abstract Router - Abstract Transformer - Resequencer ext-eip ext-jms ext-mllp - InOut/InOnly Bridge … - HL7 v2 Router - Transactional - MLLP Consumer Endpoint Consumer - MLLP Provider Endpoint - HL7 v2 Transformer ext-hl7 Enpoint … Erweiterungen Martin Krasser, Christian Ohr, ICW AG 25
  • 26. ServiceMix Erweiterungen • ext-hl7 – Domänenspezifische Implementierung von Patterns – Konfiguration auf höherem Abstraktionsniveau – Verwendung alternativer Technologien (Velocity …) • ext-eip – JBI Abstraktionsschicht – Development Kit für Komponentenentwickler – Testumgebung für EIP-Komponenten Martin Krasser, Christian Ohr, ICW AG 26
  • 27. Herausforderungen • Wie macht man Nachrichtentransformation – Skalierbar? – Ausfallsicher? – Wartbar? – Nachvollziehbar? – Flexibel? • d.h. geeignet für den Routineeinsatz? Martin Krasser, Christian Ohr, ICW AG 27
  • 28. Transformation ist auf den ersten Blick einfach D D HL7 V2 HL7 V3 Martin Krasser, Christian Ohr, ICW AG 28
  • 29. … auf den zweiten Blick … D ? D HL7 V2 HL7 V3 Validierung Transformation Auslieferung Martin Krasser, Christian Ohr, ICW AG 29
  • 30. … auf den dritten Blick … D D HL7 v2 HL7 v3 Martin Krasser, Christian Ohr, ICW AG 30
  • 31. Notation Modell JBI Beschreibung JBI Service Endpoint (Router, Transformer …) SE JBI Binding Endpoint (HTTP, JMS …) BC MessageExchange über NMR DC NMR DC Externer Dienst Martin Krasser, Christian Ohr, ICW AG 31
  • 32. Validierung File D sm-file HL7 V2 HTTP Validator ? D D sm-http ext-hl7 HL7 V2 HL7 V2 MLLP ! D ext-mllp Error log HL7 V2 Martin Krasser, Christian Ohr, ICW AG 32
  • 33. Transformation V2_A01 to Reference Reference to V3_A01 Content-based Router ext-hl7 ext-hl7 D D ext-hl7 HL7 V2 HL7 V3 V2_A03 to Reference Reference to V3_A03 ! ! Error log Error log Martin Krasser, Christian Ohr, ICW AG 33
  • 34. Auslieferung ? Resequencer Recipient List sync JMS sync HTTP sync sm-http D sm-eip ext-hl7 JMS SOAP/HTTP HL7 V3 sync sync sm-http Ext. JMS Queue JMS sync sync sm-jms ext-jms Martin Krasser, Christian Ohr, ICW AG 34
  • 35. Erhaltung der Nachrichtensequenz • Zuweisung von Sequenznummern – Berücksichtigung von Splits • Stream-Processing Resequencer – Keine Batch-Größen bekannt – Timeout-basierter Algorithmus (Zeitfenster) • Auslieferung – Synchron über NMR – Pufferung (JMS) unter Beibehaltung der Ordnung Parallele SEQ Verarbeitung SEQ Martin Krasser, Christian Ohr, ICW AG 35
  • 36. System Management • Monitoring – JMX Infrastruktur von ServiceMix und ActiveMQ • Beispiel: JMS Queue (Auslieferung) Enqueue Count Queue Size Martin Krasser, Christian Ohr, ICW AG 36
  • 37. System Management • Auditing – Speicherung eingehender und ausgehender Nachrichten • Statistik – Verarbeitungsdauer, Nachrichtendurchsatz … Anwendung Wire Tap store confirm Message Store Martin Krasser, Christian Ohr, ICW AG 37
  • 38. System Management • Re-play von Nachrichten • Filterung von Duplikaten Anwendung Duplicate Filter status query store confirm Message Store Martin Krasser, Christian Ohr, ICW AG 38
  • 39. Bidirektionale Kommunikation • Wiederverwendung von Bausteinen, die nur unidirektionale Kommunikation unterstützten • Neues Muster: InOut – InOnly Bridge InOnly InOnly … InOut InOut InOnly InOnly … Martin Krasser, Christian Ohr, ICW AG 39
  • 40. Erfahrungen • Anwendungsentwicklung – 30% Konfiguration existierender JBI-Komponenten – 70% Neu/Weiterentwicklung von JBI-Komponenten – Bessere Wartbarkeit durch domänenspezifische Patterns • Komponentenentwicklung – Komplexität durch JBI API (4 MEPs, synchron, asynchron …) – JBI-Abstraktionsschicht zur Vermeidung häufiger Fehler • ServiceMix – Stabile und performante JBI Plattform – Unterstützung von Spring bzw. XBean – Mangelhafte Dokumentation • System Management – Gute JMX Infrastruktur von ServiceMix und ActiveMQ – Einfache und effiziente Möglichkeiten zur Erweiterung Martin Krasser, Christian Ohr, ICW AG 40
  • 41. Vielen Dank für Ihre Aufmerksamkeit! Fragen? martin.krasser@icw.de christian.ohr@icw.de Martin Krasser, Christian Ohr, ICW AG 41
  • 42. Konsistente Datenhaltung • Verteiltes Transaktionsmanagement – Synchrone Kommunikation – Asynchrone Kommunikation • Unterstützung durch ServiceMix – XA Transaktionsmanager (Geronimo) – NMR als XA Resource (ActiveMQ) XA Transaction synchron: NMR NMR NMR XA Transaction 1 XA Transaction 2 asynchron: NMR NMR NMR Martin Krasser, Christian Ohr, ICW AG 42
  • 43. JBI Enterprise Service Bus • Plugin Schnittstellen konform zu JBI Externer Dienst • Plugins sind – Service Engines Binding Component – Binding Components Delivery Channel • Nachrichtenaustausch über – NMR Normalized JBI ESB Message – Delivery Channel Router (NMR) • Verteilung wird von JBI nicht Service Engine behandelt Martin Krasser, Christian Ohr, ICW AG 43
  • 44. Weitere EIP Unterstützung – Apache ODE • Ausführung von WS-BPEL Prozessdefinitionen – sm-drools • Routing mit JBoss Drools (Rule Engine) … – sm-bean • POJO Programmiermodell Martin Krasser, Christian Ohr, ICW AG 44