Guías técnicas Grupo Danysoft:
Introducción a Janeva
Equipo Grupo Danysoft
septiembre de 2003 - (902) 123146
Este documento se ha realizado utilizando Doc-To-Help®, distribuido por : Danysoft Internacional Avda de España 17 28100 Alcobendas – Madrid Tfno. 902.123146 Fax. 902.123145 http://www.danysoft.com http://www.danyshop.com [email protected]
Guías Técnicas Grupo Danysoft: Introducción a Janeva
Introducción a Borland
®Janeva
™Una aproximación a una innovadora plataforma ínter operativa utilizando
tecnologías probadas
Hoy las empresas líderes están escogiendo las mejores herramientas disponibles pero basadas en estándares para abordar el desarrollo de software. Siendo posible utilizar la más apropiada tecnología para cada tarea dada, sin encerrarse en un fabricante de software específico o una plataforma, permitiendo a esas organizaciones maximizar las inversiones tanto nuevas como existentes en recursos y tecnologías para alcanzar grandes ahorros en costes y eficiencia operacional.
Cada vez más, las tres plataformas tecnológicas dominantes, - Java 2 Enterprise Edition (J2EE), Common Object REquest Broker Architecture (CORBA) y Microsoft .NET Framework -, son utilizadas codo a codo dentro de la empresa.
• J2EE, con una escalabilidad y portabilidad superior, potencia la capa de lógica de negocio en el back-end.
• CORBA, con un rendimiento probado en sistemas de misión crítica, mantiene firmemente la estabilidad en la capa de datos en el back-end.
• Microsoft .NET Framework, una nueva generación de tecnología basada en Web Services, está emergiendo como otra plataforma de despliegues importante ofreciendo ventajas superiores en el front-end o capa de de presentación.
Como un gran número de compañías comienzan a construir soluciones basadas en Microsoft .NET Framework, las inversiones en infraestructuras J2EE y CORBA deben ser aprovechadas. En cualquier caso, haciendo que estas tecnologías trabajen juntas de forma dispar podemos presentar varios retos, aun más cuando utilizamos Web Services o disponemos comercialmente de tecnologías que hagan de puente:
• Ciclos de desarrollo más largos • Mayor coste de propiedad
• Incremento de la complejidad en IT • Grandes riesgos empresariales
Como una solución alternativa distinta, Borland Janeva proporciona interoperatividad entre plataformas que afrontas estos retos específicamente. Utiliza tecnología probada y basada en estándares, directa, con conexión de alto rendimiento entre aplicaciones Microsoft .NET e infraestructuras J2EE y CORBA. Diseñado para proporcionar una experiencia de desarrollo sin rupturas, Janeva está optimizado para utilizarse con los entornos de desarrollo más populares como Borland C#Builder y Microsoft Visual Studio .NET. Como resultado, Janeva permite a los desarrolladores .NET construir aplicaciones para los entornos mixtos con:
• Cero experiencias o formación en tecnologías J2EE o CORBA • Cero cambios en los despliegues existentes en J2EE o CORBA • Cero componentes adicionales de infraestructura
Borland Janeva proporciona conectividad de alto rendimiento desde Microsoft .NET Framework runtime a entornos J2EE y/o CORBA. Construido sobre la tecnología de Borland Enterprise Server, Janeva permite que las aplicaciones basadas en .NET accedan a componentes heterogéneos del lado servidor de J2EE y CORBA mediante el altamente escalable y seguro protocolo Internet Inter-ORB Protocol (IIOP). Veremos a continuación las ventajas de Janeva comparado con otras soluciones. Hay esencialmente dos alternativas para aproximarse a este problema: utilización de Web Services o utilización de un protocolo propietario de pasarela.
Ventajas sobre Web Services
La interoperatividad basada en Web Services está ganando popularidad y es un mecanismo muy atractivo para conectar un para de aplicaciones sobre Internet. En cualquier caso, es precisamente esta fortaleza en un entorno Internet la que comienza a debilitarse en un entorno Intranet.
Por ejemplo, Web Services basados sobre XML para una representación de datos. Es una buena elección para un para de sistemas donde la disponibilidad de lectura humana y la conversión de datos dinámica son importantes. Pero para dos sistemas estrechamente unidos formateando datos binarios está lejos de ser eficiente.
De igual manera, Web Services predominantemente basados en conexiones HTTP y SMTP, son buenos para establecer comunicaciones asíncronas infrecuentes. Pero para interacciones conversacionales donde clientes particulares comunican con servidores particulares para periodos relativamente largos de tiempo, los protocolos estilo peer-to-peer (IIOP) son mucho más eficientes.
Los Web Services son una buena elección para conexiones entre plataformas con una amplia variedad de tecnologías especialmente cuando desconocemos la tecnología de destino. Por esto mismo, las soluciones basadas en Web Services asumen muy poco la tecnología, y en cambio utilizan el mínimo común denominador para la conectividad. En contraste, Janeva tiene un conocimiento íntimo de los entornos del lado cliente y del servidor. Este conocimiento de las plataformas permite a Janeva proporcionar soporte para:
• Estado de servicios: Hoy los Web Servicies no soportan la noción de una referencia a un objeto, y por tanto no pueden soportar la invocación al estado del servicio de una forma estándar. Janeva proporciona un modelo de objeto estándar, el cual puede soportar componentes del lado servidor y
requerimientos de ciclo de vida arbitrarios.
• Tipos de datos complejos: Utilizando Web Services, los desarrolladores están forzados a manejar la conversión de datos entre XML y el modelo de objetos del programa explícitamente. Con Janeva, la conversión de datos es manejada automáticamente, lo cual es más eficiente, y además tiene menor riesgo de errores. En particular, los tipos de datos complejos de Java son convertidos al correspondiente tipo de datos .NET, incluyendo un soporte completo para las colecciones de tipos específicos de la plataforma.
Guías Técnicas Grupo Danysoft: Introducción a Janeva • Calidad de servicio empresarial: Los Web Services soportan un protocolo de
invocación simple con un reconocimiento opcional. Una más sofisticada calidad de servicio (OoS) debe ser desarrollada explícitamente por encima de esta infraestructura simple de peticiones asíncronas. En contraste, las
soluciones basadas en IIOP proporcionan un avanzado OoS incluyendo: o Balance de carga: La habilidad para desplegar en abanico las
peticiones para una colección de proveedores del servicio
o Tolerancia a fallos: La habilidad para redirigir peticiones desde un servidor que falla a un proveedor alternativo
o Transacciones: La habilidad para propagar contextos de transacciones con confirmación en dos fases a través de fronteras de aplicaciones o Escalabilidad: La habilidad para controlar el tiempo de vida de
conexiones, conexiones múltiples, etc. para optimizar la utilización de recursos
Ventajas sobre soluciones de pasarela propietarias
Existen soluciones compitiendo en el mercado para conectar el Microsoft .NET Framework a J2EE y/o CORBA utilizando protocolos propietarios. La principal limitación de estas soluciones es que requieren un componente en el lado servidor para hacer de pasarela para pasar las peticiones al servidor indicado. Interponiendo esta pasarela entre todos los clientes y servidores, un punto de fallo único es
introducido de forma potencial, así como un cuello de botella en las comunicaciones. Este tipo de solución intrusiva también crea complejidad añadida en la infraestructura del back-end, el cual incrementa el coste total de propiedad.
Además, muchas soluciones de plataforma no proporcionan una estrecha integración con algunas de las herramientas de desarrollo .NET más comunes como Borland C#Builder o Microsoft Visual Studio .NET. Como resultado, los desarrolladores .NET deben aprender y utilizar herramientas y utilidades de fuera de su entorno de
desarrollo, y así añadir niveles adicionales de complejidad y esfuerzo al proceso de desarrollo. Además, la calidad de servicio de una solución de pasarela será
profundamente dependiente de la OoS del propio protocolo de pasarela. ¿Soportará este protocolo seguridad y transacciones? ¿Soportará balanceo de cargas, tolerancia a fallos y escalabilidad? Si no lo hace, ¿puede estar seguro que el protocolo desarrollará estas capacidades de soporte en el futuro, o la tecnología de pasarela requerirá
frecuentemente, actualizaciones incompatibles? Abreviando, ¿que sensación tiene con un protocolo propietario, relativamente probado en el corazón de su empresa?
Tecnologías Soportadas
Con el soporte para diferentes lenguajes del Microsoft Common Language Runtime (CLR), Janeva es accesible para cualquier lenguaje compatible con el CLR,
incluyendo:
• Microsoft® Visual C#® .NET
• Microsoft® Visual Basic® .NET
.NET.
En el lado servidor, Borland Janeva 1.0 está certificado para correr con Borland®
Enterprise Server (AppServer,™ Team, y VisiBroker® editions), pero dada la amplia
adopción de IIOP en CORBA y J2EE, Janeva está diseñado para proporcionar acceso a:
- Cualquier J2EE 1.3 completamente IIOP, permitiendo pasar al servidor de
aplicaciones la Suite Test de Compatibilidad J2EE 1.3. (Para un listado completo ver http://java.sun.com/j2ee/compatibility.html)
- Cualquier CORBA 2.x completamente IIOP, incluyendo Borland VisiBroker y Borland VisiBroker-RT