lunes, 17 de junio de 2013

¿Cuándo usar BPEL?

En el mundo de TI, el concepto de abstracción es particularmente útil. Pero cada abstracción tiene un precio, y la abstracción de los servicios no es la excepción. Acoplamiento débil, compatibilidad, la agilidad y los demás beneficios de SOA todos introducen sobrecarga de rendimiento. Para los conjuntos limitados de servicios con un pequeño número de usuarios, este impacto en el rendimiento puede ser mínimo, pero para las implementaciones de SOA con un gran número de usuarios, servicios o de tráfico, el mantenimiento de los niveles de desempeño necesarios plantea un reto importante, tanto para los arquitectos que diseñan la infraestructura, como personal de operaciones de TI que son responsables de velar por que el rendimiento se mantenga optimo.

De hecho, en ambientes SOA con los más altos requisitos de rendimiento, manteniendo la abstracción servicios con alto tráfico es una preocupación primordial. Pero si dejamos la abstracción por un lado, entonces los servicios dejan de satisfacer las necesidades ágiles de la empresa, y la calidad de la implementación de SOA se viene abajo como un castillo de naipes.

No todos los servicios web deben ser construidos en BPEL, pues entonces se estaría tomando BPEL como un nuevo "lenguaje de programación" y eso, bien se sabe que no es así, adicionalmente sobrecargamos el web service.

Entonces, como ya lo indicamos antes, tenemos que encontrar un punto intermedio entre flexibilidad y buen rendimiento, por lo que aconsejo utilizar BPEL para las siguientes situaciones:

  • Composición compleja de flujos paralelos que involucran varios servicios web.
  • Composiciones que se ejecutan por largo tiempo, varios minutos, horas o incluso días.
  • Composiciones Asíncronas que requieren la interacción de varios servicios web.
  • Procesos que son necesarios realizar un trazo para debuggear en tiempo real las interacciones entre varios servicios web.
  • Tareas Humanas (aprobaciones, rechazos y escalamiento de tareas).

En el articulo Challenges With Using Bpel, realizado por Guy Huntington, se resalta el siguiente párrafo:


Ejemplo de un servicio BPEL (Proceso Solicitud de Compra)


No hay comentarios:

Publicar un comentario

Oracle ACE Director Award - Deiby Gómez

Thanks #OracleACE Program for this awesome certificate recognizing the work I have done in the community for the last year. Looking forwa...