Nuevas Características en Sybase EAServer 6.0

EAServer es un conjunto integrado de servidores de aplicación que se utilizan
para desplegar aplicaciones Web con soporte a tráfico de alto volumen, contenido
dinámico y procesamiento intensivo de transacciones en línea (OLTP). Este documento
tiene por objetivo resumir y describir brevemente las nuevas características
incorporadas a la versión 6.0 de EAServer:
|
|
|
|
Encuentre en
ésta página más información sobre EAServer 6.0.
|
Arquitectura de servidor liviano
Un contenedor J2EE liviano basado en una infraestructura de componentes Java
dinámicos, provee un ambiente modular y de alto rendimiento con pocas exigencias
de recursos para la ejecución de componentes estándar J2EE. El contenedor permite
la ejecución de una aplicación J2EE 1.4, incluyendo Enterprise JavaBean (EJB),
componentes Web y el API JMS sobre cualquier máquina, desde servidores de alto
desempeño, hasta dispositivos móviles, como un handheld o tablet PC
ejecutando Windows XP. Los paquetes del núcleo son 100% Java y son portables
a todas las plataformas JDK 1.4+. El código nativo es sólo usado para módulos
opcionales; por ejemplo, módulos de login del sistema operativo y para
el soporte a componentes CORBA y PowerBuilder.
Interfaz de usuario basada en Web
En EAServer 6.0, la Consola de Administración o Management Console, una interfaz
de usuario basada en Web, reemplaza al EAServer Manager (basado en Sybase Central)
como interfaz de usuario para EAServer. La Consola de Administración brinda
funcionalidad similar a la de EAServer Manager, incluyendo soporte para aplicaciones
Web basadas en JSPs. La Consola de Administración usa JavaScript, pero es completamente
funcional aún si JavaScript está deshabilitado.
La Consola de Administración brinda facilidades para la administración gráfica
de EAServer, incluyendo el soporte para el desarrollo, despliegue y ejecución
de aplicaciones. La Consola de Administración permite a los usuarios ejecutar
tareas administrativas desde un navegador Web, incluyendo gestión de archivos,
monitoreo de componentes del sistema y edición de archivos texto.
Configuración basada en Ant
En EAServer 6.0, se utilizan scripts de configuración Ant para definir
módulos EAServer. La instalación incluye configuraciones predeterminadas para
distintos tipos de módulos, incluyendo fuentes de datos, tipos de bases de datos,
proveedores EJB, configuraciones de exportación y monitores de threads.
Usando la Consola de Administración, usted puede visualizar los scripts
Ant predefinidos expandiendo la carpeta Configuration Files y seleccionando
el archivo; el contenido del archivo se muestra en el panel derecho.
Si usted usa la Consola de Administración para desplegar un módulo, un
script que define las propiedades de la entidad y los atributos del componente,
es automáticamente generado.
Despliegue personalizado
Usted puede crear módulos de despliegue personalizados para exportar partes
de un servidor para su despliegue, sincronización o copia de respaldo. Estos
módulos, llamados configuraciones de exportación (export configurations),
incluyen conjuntos de archivos de EAServer, clases Java y entidades (clientes
de aplicación, aplicaciones, EJBs y aplicaciones Web). Cada configuración de
exportación puede incluir información sobre sincronización de cluster
y dependencias con otros módulos.
Usted puede usar una configuración de exportación para:
- Exportar una entidad, tal como una aplicación Web
- Crear una copia de respaldo de un servidor o de parte de un servidor
- Definir un conjunto de archivos a sincronizarse con otro servidor en
un cluster
- Crear opciones específicas de despliegue para un servidor; por ejemplo,
usted puede crear un servidor sin un contenedor Web o un servidor que contenga
sólo un contenedor EJB
Herramienta de migración
La herramienta de línea de comandos migrate le permite migrar aplicaciones
J2EE, aplicaciones Web, servicios Web, EJBs, conectores, clientes de aplicación,
roles, colas configuradas, temas configurados, factorías de colas de conexión,
factorías de temas de conexión, y otras entidades de EAServer 5.x a EAServer
6.0. La herramienta migrate incluye una opción -gui que le permite
usar una interfaz gráfica de usuario para migrar EAServer.
Cargadores de clases personalizados
EAServer usa cargadores de clases personalizados para permitir el despliegue
y actualización de componentes y aplicaciones, sin tener que reiniciar el servidor
de aplicaciones.
En Java, un cargador de clases (class loader) carga las clases Java
usadas por una aplicación. La mayoría de aplicaciones usan el cargador de clases
del sistema de Java, el cual carga clases a partir de directorios y archivos
JAR especificados por la variable de ambiente CLASSPATH. En la configuración
normal de un programa Java, es necesario reiniciar el programa o servidor para
comenzar a usar las clases Java actualizadas. EAServer usa cargadores de clases
propios o personalizados para permitir refrescar "en caliente" clases de aplicaciones
Web y componentes Java, sin tener que reiniciar el servidor.
Mejoras en el monitoreo
Entre las nuevas características de monitoreo se incluyen:
- Navegación de asociaciones de nombres – muestra todas las asociaciones
de nombres registradas y su alcance (cliente, cluster, servidor,
paquete o componente).
- Opciones de seguimiento en cliente y servidor – seguimiento RMI–IIOP,
JMS, y SQL.
- Seguimiento y definición de perfiles para componentes EJB y Web – usted
puede habilitar el seguimiento en scipts de configuración Ant o por
la línea de comandos. Usted puede habilitar la definición de perfiles en
scripts de configuración Ant y usar la Consola de Administración
o consultas Web para visualizar estadísticas en hojas de cálculo.
- Visualización de estadísticas en formato de hoja de cálculo – usted
puede mostrar estadísticas en formato de hoja de cálculo llegando al URL
de estadísticas desde un navegador o un programa de hoja de cálculo, tal
como Microsoft Excel.
- Monitoreo en tiempo de ejecución – llevado a cabo usando la vista Statistics
en la Consola de Administración.
- Registro de excepciones y referencias cruzadas de excepciones mejorados
– las excepciones de aplicación y del sistema pueden ser gestionadas a nivel
del servidor.
- Referencias cruzadas de transacciones – registra información sobre sentencias
SQL y operaciones JMS ejecutadas dentro de una transacción.
- Monitores de threads – disponibles para componentes CORBA, PowerBuilder
y Web. Es posible asociar monitores con nombre a componentes en scripts
de configuración Ant. Los threads activos y en espera son visibles
desde la Consola de Administración.
Gestión de conexiones
En EAServer 6.0, cada controlador de conexiones con soporte a componentes
C/C++ y PowerBuilder tiene su propia librearía de conexión. En versiones anteriores
de EAServer, una librería única de conexiones, libjcm.dll (Windows) o
libjcm.so (Solaris), manejaba toda la gestión de conexión para conexiones
nativas. Al separar los controladores de conexión es posible tener clientes
o servidores más pequeños y se simplifica la gestión de conexiones.
Los componentes C/C++ y PowerBuilder requieren conexiones creadas usando
código C/C++. Para soportar conexiones C/C++, EAServer 6.0 brinda los nuevos
tipos de base de datos listados en la siguiente tabla. Para manejar una conexión
C/C++, EAServer crea un objeto Java, el cual soporta el API de JDBC.
| Tipo de base de datos |
Librería de conexión Java |
Librería de conexión C/C++ |
| JCM_Sybase |
libjcm_sybase.dll |
libct.dll |
| JCM_Odbc |
libjcm_odbc.dll |
odbcad32.dll |
| JCM_Odbc_Unicode |
libjcm_odbcu.dll |
odbcad32.dll |
| JCM_Oracle |
libjcm_oracle.dll |
oci.dll |
| JCM_Oracle_Unicode |
libjcm_oracleu.dll |
oci.dll |
Características de mensajería
Dentro de las nuevas características de mensajería se incluyen:
- Soporte completo para el API JMS 1.1.
- Los Message-driven beans o MDBs pueden recibir tipos de mensajes
diferentes de JMS. Un adaptador de recursos J2EE Connector Architecture
(JCA) integra proveedores de mensajería con el proveedor.
- Los mensajes pueden ser procesados en el orden en que se reciben, aún
cuando múltiples consumidores tengan acceso a la misma cola.
- Los mensajes duplicados pueden ser ignorados.
- Los servidores de aplicación que corran sobre dispositivos móviles pueden
iniciar operaciones de pull y push; se soportan las modalidades
online y offline.
- Las propiedades de encabezado y del sistema pueden ser usadas para construir
direcciones de colas origen o destino; para pull, solo se pueden
usar propiedades del sistema.
- Usted puede establecer una sesión con el proveedor JMS usando scripts
IIOP de single sign-on.
- Para clientes JMS, una nueva clase de factoría de contexto inicial,
com.sybase.jms.client.InitialContextFactory remplaza a com.sybase.jms.InitialContextFactory.
- La clase com.sybase.jms.client.InitialContextFactory lleva a
cabo búsquedas JNDI para resolver nombres que no estén previamente configurados.
- La clase com.sybase.jms.client.InitialContextFactory soporta
cuatro formas para el URL del proveedor:
iiop://host:port – usa IIOP para tener acceso
al servicio de mensajes.
jms-provider:jmsProviderName – usa el nombre
del proveedor JMS especificado.
run-server.server_name – usa IIOP para tener
acceso al servicio de mensajes, arranca el in-process del servidor,
si no está ya en ejecución, y elige el primer puerto IIOP del servidor
como URL del proveedor.
start-server.server_name – usa IIOP para tener
acceso al servicio de mensajes, arranca el out-of-process del
servidor, si no está ya en ejecución, y elige el primer puerto IIOP
del servidor como URL del proveedor.
Compilador JMI
El compilador Java Native Interface (JNI) es una herramienta de línea de
comandos que puede generar:
- Proxies C++ para acceso a clases e interfaces Java, que son más
productivas y menos propensas a errores que llamados JNI directos.
- Clases C++ para implementar métodos nativos Java, que son más eficientes
que llamados IDL a componentes, desde Java a C++ o viceversa.
Usted puede usar el compilador JNI:
- Para desarrollar clientes C++ que hablen con componentes EJB o JMS usando
las nuevas características del cliente EJB/JMS (por ejemplo, compresión
de datos), que no están disponibles en nuestro cliente runtime CORBA
C++.
- Cuando necesite llamar código antiguo C/C++ desde sus componentes, y
prefiera escribir EJBs con pocos métodos nativos a escribir componentes
CORBA C++.
Gestión de sistemas
La Gestión de Sistemas (Systems Management) usa la implementación
MX4J del API Java Management Extension (JMX) versión 3.0.1. La Gestión de Sistemas
expone las funciones de administración y monitoreo a otras aplicaciones, tales
como Simple Network Management Protocol (SNMP) y aplicaciones basadas en JMX.
Usted puede también habilitar la Gestión de Sistemas para dar soporte a otras
aplicaciones de administración, con diferentes protocolos, agregando conectores
y adaptadores de protocolo.
Características de los cachés
Dentro de las nuevas características de los cachés, se cuentan:
- Caché particionado de entidades – una partición de datos activa puede
ser puesta en caché para la ejecución de consultas en memoria, al mismo
tiempo que se preserva la integridad usando validación commit-time.
- Agrupamiento de consultas de entidad – procedimientos almacenados optimizados
reducen el número de consultas desde un servidor de aplicaciones con la
base de datos.
- Resultados en caché – los métodos de beans de sesión y componentes
CORBA pueden ser habilitados para uso del caché, y un trigger de
base de datos puede ser usado (en lugar de timeouts) para asegurar
la consistencia transaccional de resultados puestos en caché.
Características de los clientes
Dentro de las nuevas características de los clientes, se incluyen:
- Arranque automático del servidor – si el servidor de aplicaciones no
está corriendo, los clientes EJB y JMS pueden usar URLs especiales de proveedor
para arrancar el servidor automáticamente.
- Generación dinámica de stubs – los stubs son generados
automáticamente y compilados al ser usados por primera vez; son regenerados
y recompilados si cambia la interfaz remota de un componente.
- Compresión de datos IIOP – disponible para clientes EJB y CORBA; pueden
usar la propiedad InitialContext.
Características de clustering
Dentro de las nuevas características de clustering se incluyen:
- Particiones de cluster – usted puede definir particiones con
servidores primarios y de respaldo, luego configurar componentes individuales
para que solo los servidores en una partición específica les den servicio.
Puede reemplazar el "hot standby".
- Failover/request automáticos y registro de respuestas – para
ignorar llamados duplicados durante el failover, los métodos de
beans de sesión que retornen void pueden ser habilitados para
que su petición sea registrada, y los métodos de beans de sesión
que no arrojen void para registro de respuestas.
Características no soportadas
Esta sección describe características que se soportaban en versiones anteriores
de EAServer, pero que no se soportan en versión 6.0.
- ActiveX – Los componentes ActiveX no son ya soportados. Los clientes
CORBA ActiveX corriendo con EAServer 5.x pueden tener acceso a EAServer
6.0. Use EAServer 5.x para generar archivo .tlb y .reg
para ser usados con su ambiente de desarrollo ActiveX. Los cliente .NET
serán soportados en una versión futura de EAServer.
- Soporte a la creación de componentes – Al contrario de EAServer
Manager en versiones anteriores de EAServer, la consola de administración
no soporta la creación manual de componentes J2EE estándares, tales como
EJBs o aplicaciones Web. En su lugar, use herramientas estándar de la industria
como PowerBuilder, NetBeans, IntelliJ, Eclipse y JBuilder para empaquetar
estos componentes en archivos J2EE, para luego desplegarlos hacia EAServer
con la consola de administración, herramientas de línea de comandos, o Any.
- Clientes CORBA – La clase con la implementación de factoría de
contexto inicial om.sybase.jaguar.jndi.CosNaming.JaguarInitialContextFactory
no se soporta más.
- Hojas de propiedad de módulos J2EE – Las hojas de propiedad para
módulos J2EE no se soportan más. Usted puede usar las herramientas descritas
para el soporte a la creación de componentes, para editar las descripciones
de despliegue J2EE.
- API de administración – El API del paquete com.sybase.jaguar.management.*
no se soporta más.
- MASP – La interfaz Methods As Stored Procedures (MASP)
de EAServer no se soporta en la versión 6.0. MASP será soportado en una
versión futura.
- OCI 7 y 8 – EAServer 6.0 no soporta los cachés nativos de conexión
OCI 7 ni OCI 8.
- Modelos transaccionales OTS y DTC – El gestor de transacciones
no soporta más los modelos transaccionales OTS ni DTC.
- Caché de páginas estáticas – En versiones anteriores de EAServer,
los cachés de páginas estáticas eran usados para mejorar el acceso JNI desde
un servidor Web de lenguaje C, a servlets y JSPs. Todo el código de EAServer
6.0 está basado en Java, o sea que no se necesita ahora optimizar los llamados
JNI.
- TDS.idl – TDS.idl ya no se incluye con EAServer.