Capas de Componentes Software
Los componentes software de una arquitectura multi-capa constan de tres capas:
- La capa del cliente contiene los programas ejecutados por los usuarios, incluyendo navegadores Web y programas de
aplicaciones de red. Estos programas se pueden escribir virtualmente en cualquier lenguaje de programación.
- La capa media contiene el servidor WebLogic y otros servidores que son direccionados directamente por los clientes,
como servidores web existentes o servidores proxy.
- La capa backend contiene recursos de empresa, como sistemas de base de datos, aplicaciones de unidad central y
legales, y aplicaciones de plannings de recursos de empresa empaquetados (ERP).
Las aplicaciones del cliente tienen acceso al servidor WebLogic directamente, o a través de un servidor web o un proxy. El servidor
WebLogic conecta con servicios backend por cuenta de los clientes, pero los clientes no tienen acceso directamente a los
servicios backend.
La figura 1-1 ilustra estas tres capas de la arquitectura del servidor WebLogic Server.
Componentes de la Capa Cliente
Los clientes del servidor WebLogic utilizan interfaces estándares para acceder a servicios del servidor WebLogic. El servidor
WebLogic tiene una completa funcionalidad de servidor web, así que un navegador web puede solicitar páginas al servidor
WebLogic usando el protocolo estándar de la Web, HTTP. Los servlets de WebLogic Server y las JavaServer Pages (JSPs)
producen páginas Web dinámicas, personalizadas requeridas para las aplicaciones avanzadas de comercio electrónico.
Los programas del cliente escritos en Java pueden incluir interfaces gráficos de usuario altamente interactivos construidos
con las clases de Java Swing. También se puede tener acceso a servicios del servidor WebLogic usando los APIs estándar del
J2EE.
Todos estos servicios también están disponibles para los clientes de navegadores web desplegando servlets y páginas JSP en el
servidor WebLogic. Los programas del cliente compatibles con CORBA escritos en Visual Basic, C++, Java, y otros lenguajes de
programación pueden ejecutar JavaBeans Enterprise y RMI en el servidor WebLogic usando WebLogic RMI-IIOP. Las aplicaciones
del cliente escritas en cualquier lenguaje que soporten el protocolo HTTP pueden acceder a cualquier servicio del WebLogic
Server a través de un servlet.
Componentes de la Capa Media
La capa media incluye el servidor WebLogic y otros servidores Web, cortafuegos, y servidores proxy que median en el tráfico entre
los clientes y el servidor WebLogic. El servidor WAP de Nokia, parte de la solución de comercio móvil de BEA, es un ejemplo de
otro servidor de la capa media que proporciona una conectividad entre los dispositivos inhalámbricos y el servidor WebLogic.
Las aplicaciones basadas en una arquitectura multi-capa requieren confiabilidad, escalabilidad, y un alto rendimiento en la capa
media. El servidor de aplicaciones que seleccionemos para la capa media es, por lo tanto, crítico para el éxito de nuestro sistema.
La opción Cluster del servidor WebLogic permite que distribuyamos peticiones de cliente y servicios
backend entre varios servidores WebLogic cooperantes. Los programas en la capa del cliente acceder
al cluster como si fuera un solo servidor WebLogic. Cuando la carga de trabajo aumenta, podemos agregar otros servidores
WebLogic al cluster para compartir el trabajo. El cluster utiliza un algoritmo de balance de capa seleccionable para elegir el
servidor WebLogic del cluster que es capaz de manejar la petición.
Cuando una petición falla, otro servidor WebLogic que proporciona el servicio solicitado puede asumir el control. Los fallos
son transparentes siempre que sea posible, lo que reduce al mínimo la cantidad de código que se debe escribir para recuperar
incidentes. Por ejemplo, el estado de la sesión de un servlet se puede replicar en un servidor secundario WebLogic de modo
que si el servidor WebLogic que está manejando una petición falla, la sesión del cliente se pueda reanudar de forma ininterrumpida
desde el servidor secundario. Todos los servicios de WebLogic, EJB, JMS, JDBC, y RMI están implementados con capacidades
de clustering.
Componentes de la Capa Backend
La capa backend contiene los servicios que son accesibles a los clientes sólo a través del servidor WebLogic.
Las aplicaciones en la capa backend tienden a ser los recursos más valiosos y de misiones críticas para empresa. El servidor WebLogic
los protege de accesos directos de usuarios finales. Con tecnologías tales como almacenes de conexiones y caches, el servidor
WebLogic utiliza eficientemente los recursos backend y mejora la respuesta de la aplicación.
Los servicios backend incluyen bases de datos, sistemas de hojas de operación (planning) de recursos de
la empresa (ERP), aplicaciones mainframe, aplicaciones legales de la empresa, y monitores de transacciones. Las aplicaciones
existentes de la empresa se pueden integrar en la capa backend usando la especificación de configuración
del conector Java (JCA) de Sun Microsystems. El servidor WebLogic hace fácil agregar un interface Web a una aplicación
backend integrada. Un sistema de control de base de datos es el servicio backend
más común, requerido por casi todas las aplicaciones del servidor WebLogic. WebLogic EJB y WebLogic JMS normalmente almacena
datos persistentes en una base de datos en la capa backend.
Un almacen de conexiones JDBC, definido en el servidor WebLogic, abre un número predefinido de conexiones a la base de datos.
Una vez que estén abiertas, las conexiones a la base de datos son compartidas por todas las aplicaciones del servidor WebLogic
que necesiten acceder a esa base de datos. Sólo se incurre una sóla vez en la costosa sobrecarga asociada con el establecimiento
de conexiones para cada conexión del almacén, por cada petición de cliente. El servidor WebLogic vigila las conexiones a la base
de datos, refrescándolas cuando es necesario y asegurándose de la fiabilidad de los servicios de la base de datos para las aplicaciones.
WebLogic Enterprise Connectivity, que proporciona acceso a BEA WebLogic Enterprisesystems, y Jolt® para WebLogic Server que
proporciona acceso a los sistemas Tuxedo® de BEA, también utilizan almacenes de conexiones para mejorar el funcionamiento del
sistema.