présentation sur OpenESB

publicité
OpenESB
Libre, standard, outillé,
documenté et supporté
Alexis Moussine-Pouchkine
Sun Microsystems, Inc.
Constat
• Les projets d'intégration sont mono-éditeur
• Est-ce viable à long terme?
Quel(s) Standard(s) pour
l'intégration?
JBI (Java Business Integration)
• Standard JSR 208 issu du JCP
• Architecture de plug-in pour:
> “Service Engines”: logique métier
> “Binding Components”: protocoles
de communication
• Cycle de vie des composants
• Modèle de déploiement standard
• Couplage lâche au travers
de services décrits en WSDL
• Implémentations: OpenESB, Petals, ServiceMix, ...
Service Engine & Binding Components
Transformation
(XSLT)
Java EE
Normalized
Normalized
Message
Message
Router
Router
(NMR)
WS-I BP
SOAP
AS2
JMS
Java EE
JBI
Core
Services
System
Management
Orchestration
(BPEL)
Autres standards pour l'intégration
• Présents
> WS-* (Profils WS-I) et REST (HTTP)
> JAX-WS 2.x
• Futurs
> Open SOA (ex-SCA)
> http://www.osoa.org
> http://www.oasis-opencsa.org
> JBI 2.0 (JSR 312) prévu pour ~mi-2008
> Plus de dépendance WSDL, versioning services, intercepteurs, ...
> “Alignment with the Service Component Architecture (SCA)
specifications with the goal of making JBI 2.0 a standard Java
runtime for SCA”
OpenESB
• ESB (Enterprise Service Bus) libre et conforme à JBI 1.0
> Bus d'intermédiation pour les applications composites
> Conçu pour étendre les capacités de GlassFish (Sun AS)
Architecture OpenESB
“Fondations” GlassFish
• Web Service “Metro”
> Pile complète et intégrée pour Web Services:
WS-I Basic Profile et standards WS-* (sécurité, fiabilité,
transactions, ...)
• Performance
> Benchmark SPECjAppServer place GlassFish 10% devant
WebLogic et 30% devant WebSphere (JBoss = ??)
• Administration
> Centralisée et complète (JMX)
• Clustering
> Intégré dand le coeur du produit
> Simple de mise en oeuvre et d'administration
JavaEE Service Engine
• Idéal pour héberger la logique métier
• Pont entre les conteneurs JavaEE et JBI
• Propose le support
> des transactions
> de pools de ressources
> de la sécurité
• Réutilisation de code
> Invocation de la logique EJB/Web depuis des composants
OpenESB (BPEL Service Engine)
> MDB ou Servlet appelant un processus BPEL
> Invocation de logique Java EE avec des transports JMS,
FTP, SMTP, ...
Capacités OpenESB
• Service Engines • Binding Comps
>
>
>
>
>
>
>
BPEL
XSLT
Java EE
IEP (BAM)
ETL
SQL
Workflow
>
>
>
>
>
>
>
>
>
>
>
MQSeries
HL7
SAP
SMTP
HTTP (+REST)
JMS
File
CICS
DCOM
CORBA
...
• Autres
>
>
>
>
Clustering
CASA
JBI Mock
WSIT Tech
• En cours
>
>
>
>
>
CAM
Aspect SE
Encoding SE
Rules SE
Scripting SE
BPEL Service Engine
• Standards
> BPEL 2.0
> WSDL1.1
• Configuration
> Nombre threads
> Persistance
> Failover
• Editeur BPEL
> BPMN
> Debugger
IEP (Intelligent Event Processing)
• Création et déploiement d'un analyseur
d'événement
• Collection et notification d'événement
en temps réel
• Gestion des événements en temps réel
> Langage de requêtage continu
> Agrégation
> Filtrage
> Corrélation
> Partition
Ecosystème JBI
JBI comme
assurance vie pour
le produit et ses
utilisateurs
NetBeans
Outillage OpenESB : NetBeans
•
•
•
•
•
•
•
BPEL Module project
XSLT Module project
SQL Module project
Composite Application project
IEP Module project
Worklist Module project
ETL (Extract, Transform, and Load)
Documentation OpenESB
• Composite Applications
>
>
>
Creating a "Hello World" Composite Application
Creating a Loan Processing Composite Application
Creating a Simple SOA Application With NetBeans
• Business Process Execution Language (BPEL)
>
>
>
>
>
>
Developer Guide to the BPEL Designer
Understanding the Travel Reservation Service
Developing a Simple Asynchronous BPEL Process
Developing a Simple Synchronous BPEL Process
Using Correlation Sets, Properties, and Property
Aliases in BPEL
XPath Functions and Operations in the BPEL Mapper
• WSDL Editor
>
>
Developer Guide to the WSDL Editor
Introducing the WSDL Editor's Partner View
• XML Schema Tools
>
Getting Started With XML Schema Tools
• XSLT Designer
>
>
XSLT Designer Quick Start Guide
Working With a Service Bridge XSL Transformation
Service
• Intelligent Event Processing
>
>
Intelligent Event Processing Quick Start Guide
Developer Guide to the Intelligent Event Processor
• Identity
>
>
Securing Web Services Using the SAML or
UserNameToken Profiles
JBI Component Technical Overview
• Binding Component User's Guides
>
>
>
>
>
>
>
File Binding Component User's Guide
FTP Binding Component User's Guide
HTTP Binding Component User's Guide
JDBC Binding Component User's Guide
JMS Binding Component User's Guide
SMTP Binding Component User's Guide
WebSphere MQ Binding Component User's Guide
• Service Engines User's Guides
>
>
>
>
BPEL Service Engine User's Guide
Java EE Service Engine User's Guide
SQL Service Engine User's Guide
XSLT Service Engine User's Guide
De SeeBeyond à Java CAPS
en passant par OpenESB
• 2005: Rachat par Sun de SeeBeyond
> Leader SOA
> Architecture J2EE 1.4
> ICAN = Integrated Composite Applications Network
• 2006/2007: OpenESB
> Architecture GlassFish (Java EE 5) & JBI
> Outillage NetBeans
> Open Source!
• 2008: JavaCAPS
> “Powered by OpenESB and GlassFish”
Open ESB vs. Java CAPS
• Open ESB 2.x
• Java CAPS 5.2
> Runtime JBI
> Runtime JBI + Runtime
> GlassFish v2.x
> Tous les composants
>
>
OpenESB
> Outillage NetBeans v6
> Evolution permanente
> Support communautaire
> Beta 3 disponible
>
>
>
>
JavaCAPS 5.1
GlassFish v2.x
Sous-ensemble des
composants OpenESB
Outillage NetBeans v6
(incl Enterprise Designer)
Stable pour production
Support Sun
2008H1
Démonstration
Liens
•
•
•
•
http://open-esb.org
http://wiki.open-esb.java.net
http://netbeans.org
http://glassfish.org
[email protected]
http://blogs.sun.com/alexismp
Téléchargement