Arquitectura de componentes de servicio
La Arquitectura de componentes de servicio ( SCA ) es una colección de especificaciones que describen un modelo de arquitectura orientada a servicios (SOA). SCA se basa en estándares abiertos como los servicios web . Siguiendo el concepto SOA, los componentes SCA son independientes de una tecnología específica.
compañero
Las siguientes empresas trabajan juntas como socios para crear las especificaciones para la Arquitectura de componentes de servicio: BEA Systems , Cape Clear , IBM , SpringSource , IONA Technologies , Oracle Corporation , Primeton Technologies , Progress Software , Red Hat , Rogue Wave Software , SAP AG , Software AG , Sun Microsystems , Sybase , TIBCO , Xcalia y Zend Technologies .
definición
La especificación publicada parece vaga en muchos sentidos. Pero se está desarrollando rápidamente y están surgiendo nuevas especificaciones. Las especificaciones definen las siguientes propiedades para aplicaciones diseñadas según SCA:
- Desacoplamiento de la implementación y prestación del servicio de las posibilidades específicas de la infraestructura.
- Debe trabajar con diferentes lenguajes de programación y estándares, incluidos C ++ , Java , COBOL y PHP , así como XML , BPEL y XSLT .
- Debe admitir varias construcciones de mensajes, en particular llamadas simples sin respuesta, comunicación asincrónica, una conversación a través de varios mensajes y notificaciones.
- Las opciones de infraestructura como la seguridad, las transacciones y los informes fiables deberían influir en la codificación a través de metadatos.
- Los datos deben representarse como objetos de datos de servicio .
- Los componentes diseñados de acuerdo con los principios de SCA deben ser fácilmente reutilizables.
- Las llamadas de servicio local deberían estar más estrechamente vinculadas. Esto reduce la sobrecarga para generar y analizar mensajes, que solo está destinado al transporte a través de redes.
Análisis mas extenso
Gartner Group publicó un comunicado de prensa en 2005, concluyendo que la tecnología Service Data Objects (SDO) contenida en SCA experimentará una adopción más rápida debido a su madurez.
Beneficios:
- diseñado para todas las plataformas Java y tecnologías C ++ existentes (sin embargo, el modelo de componente SCA-C ++ tiene serios defectos)
- menos dependiente de la tecnología, p. ej. B. ni Java ni XML
- utiliza SDO, el único estándar de la industria para el acceso a datos en SOA
Desventaja:
- La falta de soporte de Microsoft reduce la relevancia de SCA para una gran cantidad de usuarios potenciales.
- La especificación no aborda el rendimiento de las aplicaciones SOA, que sigue siendo un factor disruptivo para la aplicación.
Se afirma que SCA es interoperable a través de un enfoque llamado activación. En comparación con los métodos más antiguos de "mediación" (por ejemplo, JBI) o "Invocación" ( JCA ), este método garantiza un alto grado de autonomía de los componentes.
Artefactos SCA
El modelo de ensamblaje SCA consta de una serie de artefactos. Estos están definidos por elementos en archivos XML. Una aplicación SCA puede tener otras representaciones no estandarizadas de artefactos en tiempo de ejecución que están representados por estos archivos XML. Además, puede permitir la configuración dinámica de sistemas. Sin embargo, los archivos XML definen la representación portátil de los artefactos SCA.
El artefacto base es la palabra compuesta . Esta es también la unidad de entrega dentro de SCA y contiene servicios a los que se puede acceder desde el exterior. Una palabra compuesta contiene uno o más componentes que contienen las funciones comerciales proporcionadas por el módulo. Los componentes proporcionan sus funciones como servicios. Estos pueden ser utilizados por otros componentes del mismo módulo o también están disponibles fuera del módulo a través de puntos de entrada . Los componentes pueden depender de los servicios de otros componentes; estas dependencias se denominan referencias . Las referencias pueden estar vinculadas a servicios de otros componentes del mismo módulo oa servicios fuera del módulo, en particular los de otros módulos. Las referencias a servicios fuera del módulo se definen en el módulo como servicios externos. El módulo también contiene relaciones entre referencias y servicios. Estos se llevan representa Alambres (alambres).
Un componente consiste en una implementación configurada , siendo la implementación la parte del código del programa que implementa la llamada lógica empresarial . El componente configura la implementación y tiene las denominadas propiedades que se registran para cada implementación específica. El componente también puede cambiar la configuración de la implementación especificando el cableado de las referencias a servicios específicos declarados por la implementación.
Los compuestos se entregan dentro de un sistema SCA . Un sistema SCA representa un conjunto de servicios que, a su vez, proporcionan una gama de funciones comerciales controladas por una única unidad comercial específica. Ejemplo de contabilidad: el sistema SCA podría cubrir todas las funciones relacionadas con las finanzas. Además, podría contener una serie de módulos que se ocupen de áreas de contabilidad separadas: una para las cuentas de los clientes y otra para las facturas. Los subsistemas ayudan con la creación y configuración de un sistema SCA. Los subsistemas se utilizan para agrupar compuestos relacionados. Los subsistemas contienen componentes de módulo, estos son instancias configuradas de módulos. Los subsistemas, como los módulos, tienen puntos de entrada y servicios externos que mapean los servicios y referencias externos. Los subsistemas también pueden contener cables que conectan los componentes del módulo, los puntos de entrada y los servicios externos.
Implementaciones
- HydraSCA de onda pícara
- Covansys
- Apache Toscana
- Paremus Infiniflow
- Newton
- SCA y SDO para PHP
- PocoCapsule
- Trentino
- Red de servicio TIBCO ActiveMatrix
literatura
- Wolfgang Beinhauer, Michael Herr, Achim Schmidt: SOA para empresas ágiles, Symposion Publishing 2008, ISBN 978-3-939707-14-1 (www.symposion.de/it-management)
enlaces web
- Colaboración de arquitectura orientada a servicios abierta , la página de inicio oficial para obtener información sobre las especificaciones de SCA
- Artículo introductorio de IBM developerworks sobre SCA
- La arquitectura de componentes de servicio: una introducción
- especificaciones actuales
- Implementación del proyecto Apache Open Source de la especificación SCA
- Implementación SCA de código abierto de PocoCapsule (para C ++)
- Anuncios de SCA en el sitio web de OASIS
- Trabajo inicial de Service Data Objects por BEA e IBM (archivo PDF)
- Comparación de WCF y SCA
- Resumen de SCA
- BPEL en montaje SCA
- La pregunta crucial: ¿WCF, SCA o JBI? (Archivo PDF; 364 kB)
- Herramientas Eclipse STP SCA
- Tiempo de ejecución de Trentino C ++ SCA
Evidencia individual
- ↑ Service Component Architecture Inicio ( Memento de la original, del 11 de abril de 2011 en el Archivo de Internet ) Información: El archivo de enlace se inserta de forma automática y sin embargo no ha sido comprobado. Verifique el enlace original y de archivo de acuerdo con las instrucciones y luego elimine este aviso. - SCA en www.osoa.org
- ^ Socios de arquitectura de componentes de servicio
- ↑ http://www-128.ibm.com/developerworks/library/specification/ws-sca/
- ↑ Archivo de copia ( Memento de la original, del 12 de octubre de 2007 en el Archivo de Internet ) Información: El archivo de enlace se inserta de forma automática y sin embargo no ha sido comprobado. Verifique el enlace original y de archivo de acuerdo con las instrucciones y luego elimine este aviso.
- ↑ http://www.gartner.com/resources/136600/136687/new_soa_specification_will_f_136687.pdf
- ↑ SCA considerado perjudicial ( Memento del 24 de febrero de 2008 en Internet Archive )
- ↑ Archivo de copia ( recuerdo de la original, el 17 de diciembre de 2012 en el archivo web archive.today ) Información: El archivo de enlace se inserta de forma automática y sin embargo no se comprueba. Verifique el enlace original y de archivo de acuerdo con las instrucciones y luego elimine este aviso.
- ↑ BEA, IBM, IONA, Oracle, SAP, Siebel, Sybase (colectivamente, los "Autores") acuerdan ofrecer una licencia libre de regalías bajo términos razonables y no discriminatorios para las patentes que consideren necesarias para utilizar el Componente de servicio Implementar la especificación de arquitectura.