Mule ESB<br />Spring Tours UPeU 2009<br />José Luis Gutiérrez<br />
Descripción General<br />Características de Mule<br />Arquitectura Mule<br />Conceptos Mule<br />Ejemplo/Demo<br />Herrami...
¿Qué es Mule?<br />
Framework de Integración y plataforma de mensajería Open Source.<br />Estadísticas(desde 1.0)<br />Más de 1,000,000 de des...
Descripción General<br />
Soporta una variedad de topología de servicios incluyendo ESB.<br />Altamente escalable; usando SEDA modelo de eventos.<br...
No hay formato de mensaje prescrito<br />XML, CSV, Binary, Streams, Record, Java Objects. Mezclar y combinar.<br />Cero có...
Arquitectura de componentes Mule<br />
Configuración en XML<br />Schema no en DTD<br />Configuración específica de Endpoint<br />IDE/Editor amigable, finalizació...
Arquitectura de Nodos Mule<br />
Tecnologías Soportadas<br />
Usa Spring2.x para manejar Namespace<br />Cada modulo tiene su propio Namespace<br />Cada modulo puede definir configuraci...
No hay nombres de clases<br />Las propiedades son definidas en el esquema<br />Validación de valor de las propiedades<br /...
Usando diferentes módulos (namespaces)<br />
1. Services<br />2. Endpoints and Transport Providers<br />3. Inbound<br />4. Outbound<br />5. Transformers<br />7. Servic...
<ul><li>En Mule pueden ser objetos - POJOs, EJBs, Remote Objects, WS/REST Services.
Configurado en XML.
Mule manejahilos, Pool y recursos de administración via JMX.</li></ul>Services<br />
<ul><li>Se utiliza para conectar los componentes y sistemas externos
Endpoints usauna URI paraacceder.
Puedentener transformer, transaction, filter, security y meta-information asociada.
Existen dos tipos de URI
scheme://[username][:password]@[host][:port]?[params]
smtp://ross:pass@localhost:25
scheme://[address]?[params]
jms://my.queue?persistent=true</li></ul>Endpoints<br />
<ul><li>Controla los eventosque son enviados y recibidos.
Se puedemodelartodos los patrones de enrutamientodefinido en el libro EIP.
Inbound Routers
Idempotency
Selective Consumers
Re-sequencing
Message aggregation
Upcoming SlideShare
Loading in …5
×

Mule ESB

4,564 views

Published on

This presentation is the same that was published on September 18th, 2009.

"mule-esb-2016509"

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,564
On SlideShare
0
From Embeds
0
Number of Embeds
69
Actions
Shares
0
Downloads
225
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Mule ESB

  1. 1. Mule ESB<br />Spring Tours UPeU 2009<br />José Luis Gutiérrez<br />
  2. 2. Descripción General<br />Características de Mule<br />Arquitectura Mule<br />Conceptos Mule<br />Ejemplo/Demo<br />Herramientas Mule<br />MuleHQ<br />MuleIDE<br />Agenda<br />
  3. 3. ¿Qué es Mule?<br />
  4. 4. Framework de Integración y plataforma de mensajería Open Source.<br />Estadísticas(desde 1.0)<br />Más de 1,000,000 de descargas<br />Más de 2,500 desarrolladores en lista de usuarios.<br />Más de 2,000 despliegues en producción.<br />Más de 10 millones de vistas del web page, entre otros.<br />Información Mule<br />
  5. 5. Descripción General<br />
  6. 6. Soporta una variedad de topología de servicios incluyendo ESB.<br />Altamente escalable; usando SEDA modelo de eventos.<br />Asíncrono, Síncrono y Request/Response de mensajería.<br />Soporte J2EE: JBI, JMS, EJB, JCA, JTA, Servlet.<br />Potentes capacidades de enrutamiento de eventos.<br />Amplitud de conectividad (Más de 60 tecnologías).<br />Distribución tranparente.<br />Transacciones: Local y Distribuido(XA).<br />Tolerancia a fallos; Gestión de excepciones-<br />Seguridad; Authentication/Authorization.<br />SOA Navaja Suiza<br />
  7. 7. No hay formato de mensaje prescrito<br />XML, CSV, Binary, Streams, Record, Java Objects. Mezclar y combinar.<br />Cero código de intrusión<br />Mule no impone un API en objetos de servicio<br />Los Objetos son totalmente portables<br />Existencia de objetos que pueden ser manejados<br />POJOs, IoCObjects, EJB SessionBeans, RemoteObjects<br />REST Web Services<br />Fácil de testear<br />Mule puede ser facilmente ejecutado desde Junit test case.<br />El Framework provee un kit compatible de Test<br />¿Porque elegir Mule?<br />
  8. 8. Arquitectura de componentes Mule<br />
  9. 9. Configuración en XML<br />Schema no en DTD<br />Configuración específica de Endpoint<br />IDE/Editor amigable, finalización de código<br />Configuración Java<br />Endpoint para enlaces Java<br />Metodo asociado a llamadas Endpoint<br />Registro de configuración<br />Mejora de manipulación de Mensajes<br />Streaming<br />Transformation<br />Características de configuración<br />
  10. 10. Arquitectura de Nodos Mule<br />
  11. 11. Tecnologías Soportadas<br />
  12. 12. Usa Spring2.x para manejar Namespace<br />Cada modulo tiene su propio Namespace<br />Cada modulo puede definir configuración personalizada<br />Mule provee un framework para ayudar con consistencia<br />Los Spring Beans pueden ser fácilmente embebidos<br />Sin problemas para mezclar objectos<br />Objetos desde otros contenedores también son soportados<br />Seasar<br />Hivemind<br />PicoContainer<br />Soporta AOP<br />Puede asesorar configuración de objetos<br />Puede ser usado Spring DAO y JDBC<br />Configuración XML<br />
  13. 13. No hay nombres de clases<br />Las propiedades son definidas en el esquema<br />Validación de valor de las propiedades<br />Los namespaces definen los modulos al ser usados <br />Configuración Mule 2<br />
  14. 14. Usando diferentes módulos (namespaces)<br />
  15. 15. 1. Services<br />2. Endpoints and Transport Providers<br />3. Inbound<br />4. Outbound<br />5. Transformers<br />7. Service Manager<br />Conceptos Mule<br />
  16. 16. <ul><li>En Mule pueden ser objetos - POJOs, EJBs, Remote Objects, WS/REST Services.
  17. 17. Configurado en XML.
  18. 18. Mule manejahilos, Pool y recursos de administración via JMX.</li></ul>Services<br />
  19. 19. <ul><li>Se utiliza para conectar los componentes y sistemas externos
  20. 20. Endpoints usauna URI paraacceder.
  21. 21. Puedentener transformer, transaction, filter, security y meta-information asociada.
  22. 22. Existen dos tipos de URI
  23. 23. scheme://[username][:password]@[host][:port]?[params]
  24. 24. smtp://ross:pass@localhost:25
  25. 25. scheme://[address]?[params]
  26. 26. jms://my.queue?persistent=true</li></ul>Endpoints<br />
  27. 27. <ul><li>Controla los eventosque son enviados y recibidos.
  28. 28. Se puedemodelartodos los patrones de enrutamientodefinido en el libro EIP.
  29. 29. Inbound Routers
  30. 30. Idempotency
  31. 31. Selective Consumers
  32. 32. Re-sequencing
  33. 33. Message aggregation
  34. 34. Outbound Routers
  35. 35. Message splitting / Chunking
  36. 36. Content-based Routing
  37. 37. Broadcasting
  38. 38. Rules-based routing
  39. 39. Load Balancing</li></ul>Routers<br />
  40. 40. Ejemplo; AmulzonBookstore<br />
  41. 41. AlmuzonService es un POJO que implementa BookstoreService<br />Código del servicio<br /><ul><li>La implementacion (El POJO puede ser manejado por Mule)</li></li></ul><li>Order.class<br />PaymentDetails<br />CustomerDetails<br />OrderedItems<br />ProcessedOrder.class<br />Objetos de dominio son los mensajes<br />
  42. 42. Configurando AlmuzonBookstore<br />
  43. 43. Exponiendo como un Servicio Web<br />
  44. 44. Exponiendo como un Servicio Web<br />
  45. 45. Llamando a otro servicio<br />
  46. 46. JMS con ActiveMQ y Mule.<br />Servicio Web con Xfire y Mule.<br />Iniciando servicios mediante Quartz y HTTP.<br />Demo<br />
  47. 47. Monitorea el estado de tus servidores y servicios<br />Vistas y gráficos de estadísticas para recursos y eventos Mule durante el tiempo.<br />Auto inventario de servidores y servicios.<br />Alertas personalizadas para algunos eventos en Mule incluyendo Excepciones, fallas de conexiones y seguridad.<br />Control total JMX.<br />MuleQH<br />
  48. 48. MuleHQDashboard<br />
  49. 49. Basado en Eclipse IDE<br />Asistente de proyecto Mule<br />Configuración Drag and Drop<br />Editor gráfico extensible<br />Mule IDE 2.x Eclipse<br />
  50. 50.
  51. 51.
  52. 52. Referencias<br />http://www.mulesoft.org<br />http://www.mulesoft.org/display/MULE2INTRO/Examples<br />
  53. 53. ¿Preguntas?<br />

×