Skip to main content

WSO2 como plataforma SOA open source

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (Ninguna valoración todavía)
Cargando…

En multitud de ocasiones se ha escrito sobre qué es SOA (Arquitectura Orientada a Servicios), pero en muy pocas se ha hecho  sobre soluciones 100% open source. En este artículo analizaremos la solución que nos propone WSO2 con su suite de productos y daremos a conocer aspectos importantes para su despliegue.

WSO2 nos ofrece un amplio conjunto de herramientas open source que nos ayudarán a  implementar una plataforma SOA. Entre los principales productos que podemos encontrar, destacamos:

  • ESB (Enterprise Service Bus): Bus de servicios de empresa. Es pieza clave en cualquier arquitectura SOA la figura de un bus de integración, como núcleo de la plataforma SOA.
  • Governance Registry: Se trata de un registro de artefactos de gobierno.
  • BAM: Permite monitorizar la actividad de negocio.
  • Data Service Server: Herramienta que  transforma una fuente de datos como servicio web.
  • Developer Studio: es un framework de desarrollo, basado en Eclipse, para crear y desplegar los distintos artefactos en la plataforma SOA (WSO2 Developer Studio).

No son estos los únicos productos que WSO2  nos ofrece. Existen otra serie de productos complementarios a los anteriores. Entre ellos se encuentra el Identity Server (Servidor de Identidad) para la gestión de la seguridad de los servicios,  el Message Broker (Broke de Mensajes) que posibilita la comunicación asíncrona entre aplicaciones y la publicación de mensajes a suscriptores. Podemos consultar la lista completa de productos de WSO2.

En una extensa comparativa de las alternativas open source para plataformas SOA, la suite WSO2 sale favorecida frente otras soluciones open source existentes.  El siguiente gráfico representa el resultado de una comparativa entre plataformas SOA open source, en la cual se analizan aspectos tales como la capacidad de integración, el comportamiento en un entorno productivo, la asequibilidad de los productos, los adaptadores disponibles y otras características.

qsosESB

Como para cualquier otro producto open source, debemos tener en cuenta que, aunque la suite de productos de WSO2 nos ofrece todos los ingredientes necesarios para construir una plataforma SOA, se hace imprescindible contar con respaldo y soporte profesional que nos ayude a conseguir el objetivo final. Como veremos más adelante, además del típico soporte en la fase de explotación de la plataforma SOA, es posible necesitar apoyo durante la fase de desarrollo, pruebas y despliegue.

Debemos seleccionar bien los productos de la suite de WSO2 necesarios para cubrir nuestras necesidades y llevar a cabo todas las pruebas necesarias para asegurarnos que los productos seleccionados cumplen con las expectativas para nuestra  plataforma SOA. En este sentido, WSO2 nos lo pone bastante fácil, ya que estos productos pueden ser descargados, instalados, modificados y probados sin ningún tipo de restricción.

Es muy probable que, una vez finalizadas las  pruebas  preliminares sobre los productos de WSO2, comprobemos que, en mayor o menor medida, las herramientas tendrán que ser personalizadas a nuestras necesidades, lo que sin duda, supondrá una amenaza para conseguir nuestro objetivo final.  Los productos de WSO2, por defecto, nos ofrecen una funcionalidad muy general y flexible, y aunque nos van a aportar un valor añadido indudable,  inevitablemente tendrán que ser adaptados.

Las adaptaciones requeridas pueden ser muy diversas, y dependerán en gran medida de nuestras necesidades y también del producto concreto de la suite de WSO2. Como ejemplo, estas adaptaciones pueden consistir en el desarrollo de algún mediador ad-hoc para el ESB, el desarrollo de un Gadget para el dashboard de BAM que monitorice algunos parámetros de negocio definidos, o bien, en personalizar el componente Governance Registry para que permita la administración de nuevos artefactos de gobierno.

Otro punto muy importante a tener en cuenta, sobre todo en entornos de misión crítica, es acometer el diseño y despliegue de una arquitectura que responda a un compromiso aceptable entre la optimización de los recursos hardware y la obtención de productos que ofrezcan una alta disponibilidad, con capacidad de tolerancia a fallos y que sean escalables. Debemos decidir qué componentes de WSO2 deben desplegarse en clúster y cuál es la configuración que más se adapta a nuestras necesidades.

Como conclusión, podemos afirmar que es factible iniciar el camino hacia una plataforma SOA de clase empresarial con WSO2, pero eso sí, nunca debemos recorrer ese camino en solitario.

En próximos post entraremos en detalle en los productos más relevante de la suite de WS02 e iremos comentando sus peculiaridades, puntos a tener en cuenta y soluciones.

Espero que te haya gustado este artículo. Te animo a que lo compartas en tu red social preferida. Si tienes algún comentario o duda puedes dejarlo a continuación.

 

 

Francisco Pozo Hortigosa

Francisco Pozo Hortigosa

Arquitecto SOA con más de 4 años de experiencia en el mundo SOA con productos como WS02 y Oracle SOA Suite (certificación)

Francisco Pozo Hortigosa ha escrito 1 entradas


Francisco Pozo Hortigosa

Francisco Pozo Hortigosa

Arquitecto SOA con más de 4 años de experiencia en el mundo SOA con productos como WS02 y Oracle SOA Suite (certificación)

17 comentarios en “WSO2 como plataforma SOA open source

  1. Hola Francisco, muy interesante el post.

    Una curiosidad, ¿Qué pasó con openESB? No lo veo en la comparativa entre productos opensource…según creo recordar se le veían buenas perspectivas allá por el 2009…:)

    Seguiré con interés tus próximos posts sobre la suite de WSO2…

    1. Hola Isaac, como tú bien comentas, OpenESB en esa fecha, año 2009, era considerado un producto muy a tener en cuenta como ESB basado en Open Source dentro de una plataforma SOA.

      GlassfishESB fue la versión empresarial del producto OpenESB y Oracle era la empresa que daba soporte empresarial al producto GlassfishESB tras haber adquirido a la compañía Sun Microsystem ese mismo año.

      Sin embargo, la opción de usar GlassfishESB dejó de ser interesante desde que Oracle hizo pública su intención de dejar de dar soporte para este producto.

      En cualquier caso, también me gustaría aclarar que OpenESB es sólo una pieza dentro de un plataforma SOA, ya que como comento en el post, es habitual complementar con otros elementos como el Governance Registry, Data Service Server, BAM y otros más que puedan ser requeridos para cubrir todas la necesidades.

      Finalmente, Isaac, permíteme agradecerte el interés mostrado sobre este post y los venideros.

      1. Hola Francisco, tengo interés en monitorizar servicios web con la herramienta WSO2 BAM de la suite de WSO2 pero tengo pocos conocimientos del tema. Quisiera ver la posibilidad de que ayudes con este tema.

  2. Buenas Francisco:
    Estoy trabajando en el desarrollo de una arquitectura para aplicaciones compuestas usando la suite WSO2, y quisiera saber que patron de arquitectura sería mejor y porque.

    1. Hola, Geirelys, comentarte que una mejor o peor arquitectura dependerá de los requerimientos específicos de cada proyecto, ¿podrías concretar los requerimientos funcionales clave de tu desarrollo con WSO2?

        1. Hola Geirelys, sería muy interesante que nos planteras tu problema para poderlo compartir con el resto de lectores. No obstante, comentarte que mi e-mail es público y aparece en la ficha personal.

          Agradezco tu interés. Un saludo.

  3. Hola Francisco:
    Estoy trabajando con el GReg de WSO2 y quisiera saber como puedo obtener datos(como el proveedor, descripcion) de los servicios web mediante el uso de API.
    Gracias.

  4. Buenas Francisco .El tema es que debo proponer una arquitectura para aplicaciones compuestas usando las herramientas necesarias de la WSO2 con el fin de erradicar los problemas q existen en las aplicaciones tradicionales,tratando de cumplir con los requisitos de escalabilidad,reusabilidad,seguridad,etc ,nose si me explico.

  5. Es posible proponer la arquitectura basada en web utiizando el patron MVC donde todas las funcionalidades esten expuestas como servicios Los servicios pueden ser parte de la M, V, C de MVC?Todo esto basado en las herramientas WSO2.

  6. Buenos días Jose,

    interesante artículo, felicidades. Yo por mi lado tengo poca experiencia con WSO2 y de momento me estoy dedicando a trabajar con casos de uso poco complejos que me hagan aprender el manejo del Framework, Ahora estoy con la integración del MB y el ESB pero no lo termino de lograr. Estoy siguiendo el tutorial siguiente:

    https://wso2.org/jira/secure/attachment/22737/MB-ESB-Integration-V2.pdf

    En el ESB llego a ver el mensaje de INFO – LogMediator STATE = message is sent to queue

    y ademas en la aplicación web del MB veo como se incrementan el numero de mensajes de la cola pero no obtengo respuesta de la query. Espero que me puedas ayudar.

    Gracias y un saludo.

  7. Excelente artículo.

    Me guitaría saber, de alguna experiencia de implantaciones en productivo de esta plataforma y su comportamiento a nivel general, actualmente yo mantengo una plataforma de integración, implementada en Mule con cerca de 145 servicios, pero tengo carencia en lo relativo a gobierno en tiempo de ejecución y a nivel de registro (catalogo de servicios).

  8. Al igual que Ricardo, me gustaría conocer alguna experiencia práctica de la implementación de la herramienta WSO2 BAM de la suite de WSO2, fundamentalmente en la monitorización del comportamiento de web services. Estoy interesado en este tema.

  9. Muy buen artículo Francisco.

    Yo había elegido esta plataforma para mi próximo proyecto en base a otras referencias… pero si llego a ver el tuyo hubiera dudado menos, porque es bastante claro.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *