Conceptos básicos de aplicaciones de varios niveles en 12c oráculo
Oracle 12c da cuenta de que maplicaciones ulti-tier son el estándar actual de la industria y componer web múltiples, aplicaciones y servidores de bases que proporcionan contenido a los clientes ligeros con la presentación a través de un navegador web. Alguna vez se preguntó lo que hay detrás de las escenas cuando se conecte a una aplicación web para compras en línea o banca?
El nivel de cliente no es más que un navegador web para acceder a un servidor web. Viendo contenido al usuario es el propósito principal del cliente en este Architecture- sin procesamiento real se produce en esta capa dentro del navegador. Presentación ocurre más comúnmente a través de HTML (HyperText Markup Language), pero también puede estar dentro de un applet de Java o un componente ActiveX y el uso de javascript para el formato más dinámico y contenido.
Comunicación desde el navegador al servidor web se produce a través de HTTP (HyperText Transfer Protocol) o HTTPS para proteger los datos (cifrado). Servidores Web conceptualmente actúan como web listeners- reciben peticiones de los navegadores y devuelven conjuntos de resultados formateados con poco procesamiento por su cuenta. Una vez en el servidor web, la solicitud del navegador se analiza y se envía al servidor de aplicaciones adecuado para su procesamiento.
El componente de servidor de aplicaciones puede ser en el mismo servidor físico que el servidor web, o puede ser en otro servidor físico. Por el momento, el servidor web más común es Apache, o uno de sus derivados comerciales, con más del 50 por ciento de la cuota de mercado de acuerdo con Netcraft.
A nivel de servidor de aplicaciones, la solicitud del usuario se procesa utilizando la lógica de la aplicación correspondiente. Un método muy común es el uso de un servidor de aplicaciones Java, como Tomcat, Orion, o Glassfish. En este caso, la lógica del programa se ejecuta en una máquina virtual Java (JVM), que actúa como el entorno de ejecución para el código del programa.
Otra herramienta popular es Oracle Fusion Middleware (OFM). Dentro OFM, el programa puede ejecutarse como Oracle Forms, Reports, Discoverer, o incluso a través de Java Oracle Containers para J2EE (OC4J). Independientemente del producto, es dentro del componente de servidor de aplicaciones que se ejecuta la lógica de la aplicación.
Durante el procesamiento en el servidor de aplicaciones, es común a necesitar el acceso de base de datos para consultar, crear, actualizar o eliminar datos. El servidor de aplicaciones se comunica con el servidor de base de datos a través de protocolos, tales como JDBC u Oracle Net, para acceder a los datos. Durante este tiempo, el servidor de aplicaciones está accediendo a la base de datos en nombre del usuario que realiza la solicitud de aplicación.
En lugar de conectar como una llamada, el usuario distinta como JSMITH, el servidor de aplicaciones se conecta utilizando una cuenta de Internet genérico (como WEB_USER). Múltiples conexiones simultáneas desde el servidor de aplicaciones a la base de datos de un formulario agrupación de conexiones que permite a cualquier conexión de base de datos para los datos de acceso para una solicitud. La agrupación de conexiones es una ventaja de rendimiento porque sólo una pocas conexiones de base de datos puede dar servicio a miles de peticiones en nombre de muchos usuarios.
Al iniciar sesión en la instancia de base de datos, las consultas o usuario web genéricos ejecuta DML en nombre del servidor de aplicaciones, que está procesando una solicitud de usuario real. La conexión agrupada usuario de la web no tiene la propiedad de esquema en el base de datos- tiene sólo los permisos necesarios para acceder o actualizar datos en nombre del servidor de aplicaciones.
Durante este tiempo, se utilizan normales funciones de base de datos, permisos y concesiones. Además, la lógica del programa de base de datos implementada en PL / SQL a través de procedimientos, funciones y paquetes a menudo se ejecuta.
Después de que los datos de conjunto de resultados se genera en la base de datos de nivel, se pasa de nuevo al servidor de aplicaciones para más procesamiento. A continuación, los resultados se transmiten a través del servidor web ya través de la red para su presentación al usuario a través de su navegador web.
Suena complicado con todos los diversos componentes? Usted puede pensar que lo que al principio, pero existen buenas razones para romper el sistema en web, aplicaciones y componentes de bases de datos:
Puede utilizar componentes de diferentes proveedores en un " lo mejor del mercado " de configuración. Por ejemplo, puede utilizar una instancia libre de servidor web Apache junto con Tomcat o Glassfish para un componente de servidor de aplicaciones barato. Entonces ate que a la potencia de la base de datos Oracle, y usted tiene un sistema sólido a costos más bajos!
A medida que más usuarios están en línea, usted puede agregar más web, aplicación, o las instancias del servidor de base de datos para aumentar su capacidad de procesamiento. En lugar de comprar servidores más grandes, acaba de comprar servidores más pequeños.
Después de tener una serie de varios servidores, ganar la tolerancia a fallos. Esto se llama la agrupación. Si un servidor web bloquea o el servidor de aplicaciones necesita mantenimiento, no hay problema - los servidores redundantes recogerá la carga de trabajo.
Con suerte, estos beneficios muestran por qué arquitecturas de sistemas de varios niveles son el estándar de la industria y han superado a los sistemas cliente-servidor.