Вы находитесь на странице: 1из 9

Arquitectura Técnica

La presente sección tiene como objetivo especificar


los estándares tecnológicos, de seguridad y de
arquitectura que es necesario cumplir por el
proveedor, así como también las tecnologías
recomendadas para ciertos componentes de la
solución propuesta.

Requerimientos de Arquitectura

La arquitectura tecnológica de Oracle esta basada en


una división funcional de tres capas, siendo un
objetivo importante que el cliente posea cualquier
dispositivo basado en Browser, desde computadoras
personales hasta teléfonos celulares. Este Browser
constituye la capa cliente. Las aplicaciones son
operadas bajo un “Servidor de Aplicaciones”, el cual
es el encargado de ejecutar y administrar las
aplicaciones. Finalmente se encuentra el motor de
datos, quien debe administrar la información
manejada por las aplicaciones.

Componentes Lógicos
La arquitectura lógica básica conformada puede ser
representada por:

En la práctica, tanto la capa correspondiente al


servidor de aplicaciones como la correspondiente al
motor de datos puede ser dividida, ya sea por efectos
de performance, seguridad o alta disponibilidad entre
los factores principales.
El objetivo principal de la arquitectura lógica es evitar
que el desarrollo de aplicaciones se vea amarrado a
la arquitectura física final.
El Objetivo para las estaciones cliente es que los
usuarios puedan acceder a las aplicaciones usando
un Browser estándar, es decir, sin requerir instalar
componentes localmente. Las aplicaciones son
ejecutadas por un servidor de aplicaciones, de
manera que estas aplicaciones puedan ser vistas
como servicios, que además pueda hacer uso de los
servicios provistos por la base de datos.
Los servicios que entrega el servidor de aplicaciones
pueden ser de diversa índole, dependiendo
básicamente de las funciones que se desea entregar
y la interfaz gráfica que será vista por los usuarios,
Cache para aplicaciones y datos entre los más
relevantes.
Otra componente relevante de esta infraestructura
corresponde al motor de datos Oracle, el cual,
además de los servicios básicos de motor de datos
relacional, entrega una serie de servicios que
permiten la interacción y desarrollo de las
aplicaciones bajo un ambiente Web. Entre estos
servicios se cuenta el de Workflow, Sheduling &
Routing, Seguridad y Mensajería de transacciones
entre otros.

Componentes Oracle
Desde el punto de vista de los Componentes Oracle
requeridos, básicamente se han dividido en tres
fundamentales:
• Base de datos: Corresponde al motor de datos
y los servicios relacionados.
• Internet Application Server (iAS): Corresponde
a la componente encargada de la ejecución de
los diferentes tipos de aplicación.
• Internet Developer Suite (iDS): Corresponde a
un conjunto único que contiene todo el
ambiente y herramientas de desarrollo
necesario.

Gráficamente, el detalle de la arquitectura puede


verse como:
Capa Presentación
Presentación de la Aplicación
La solución propuesta, como bien fue detallado en el
capítulo “Alcance Funcional” se compone de la
implementación de la funcionalidad estándar de las
aplicaciones Oracle E-Business Suite.
La solución propuesta puede ser accedida desde
cualquier computador personal con conexión a una
red Internet o Intranet. Ningún tipo de software
especial debe ser cargado o configurado en especial
para ser utilizado como estación de trabajo.
Las estaciones de trabajo deberán ser máquinas en
las cuales se pueda ejecutar un navegador de
Internet que sea capaz de ejecutar Java y el Oracle
Jinitiator para la aplicación. El acceso de estas
pantallas con la aplicación misma es 100% Java.

Capa de Lógica de Aplicación - Internet


Application Server (iAS)
El Internet Application Server entrega una serie de
servicios orientados a la ejecución de aplicaciones
bajo ambiente Web.
Servicios de Aceleración
Este servicio consiste en un Caché para la ejecución
de aplicaciones, su objetivo es evitar que cada vez
deba ejecutarse en forma completa todas las
aplicaciones.
Este Caché esta estructurado de manera que sea
configurable por cada componente,
independientemente si estas son de tipo estático o
aplicaciones, CGI u otra cualquiera.
Servicios de Comunicación
Este servicio esta dividido en dos componentes,
dependiendo del tipo de dispositivo que esta siendo
utilizado para acceder a las aplicaciones.
HTTP Server
Este corresponde al tradicional servidor Web. Oracle
incluye dentro de su oferta el servidor Apache, para
de esta manera aprovechar la gran penetración de
este. Además es Oracle quien da soporte a este
servidor Web.
Servicios de Presentación
Este servicio permite la ejecución de las
componentes de aplicación, ya sea desarrollada con
las herramientas Oracle (Portal, Forms, Reports,
Jdeveloper Java) como otras.
Servicios de Lógica de Negocios
Este servicio permite la ejecución de lógica de
negocios bajo los estándares Java como JCORBA,
Enterprise Java Beans, Business Components for Java,
etc. Además de los propios generados con PL/SQL,
Forms, Reports. En general estas componentes no
generan interfaz visual y sólo se preocupan de la
lógica.
Servicios de Administración de Datos
Estos servicios están orientados a manejar los
servicios de acceso a los datos que se requieren, de
manera de facilitar y controlar su acceso.
Database Caché
Permite definir en la capa del servidor de
aplicaciones un cache para los datos de la base de
datos, de manera que las aplicaciones puedan
acceder los datos del cache en lugar de ir a la base
datos. Este proceso es realizado en forma
transparente para las aplicaciones, de manera que
permite disminuir drásticamente el acceso a la base
de datos completa.
Servicios de Sistema
Se denomina de esta manera a los servicios que
provee la plataforma para interactuar con las
diversas componentes de hardware que se tenga.
Entre estos servicios se cuenta:
• Balanceo de Carga: Con diversas opciones
para las diversas arquitecturas de hardware
existentes.
• Enrutamiento: Para dividir los servicios del
servidor de aplicaciones en mas capas de
hardware.
• Seguridad: Para interactuar con los diversos
protocolos y Proxy de mercado.

Base de Datos Oracle


La base de datos Oracle ha ido incorporando una
serie de servicios tendientes a potenciar y facilitar las
aplicaciones que corren bajo un ambiente Web.
Además se ha optimizado todo su ambiente
tradicional, de manera de proveer mejor
performance, mejor escalabilidad y mayor
confiabilidad.
Java
Oracle incorpora una máquina virtual Java dentro del
motor, lo cual permite desarrollar todo tipo de
componentes dentro del motor. Esto se traduce en la
posibilidad de incorporar desde procedimientos
almacenados, triggers de base de datos,
componentes CORBA y otros, dentro del motor.
El hecho de incorporar este tipo de componentes
permite ampliar las potencialidades del motor, ya
que permite hacer casi cualquier proceso por esta
vía, por ejemplo, triggers de base de datos que
manden mail, complejos procesos de cálculo, etc.
Procedimientos Externos
Oracle permite la declaración como procedimiento
almacenado de la base de datos, de funciones
realizadas en otros lenguajes:
• 3GL: C, C++, Pascal, etc.
• COM: Objetos DCOM en el caso NT.
• MQ Series: Gateway de conexión directo.
Advanced Queuing
Permite mantener un sistema de mensajería y colas
para que el procesamiento de transacciones pueda
ser realizado en forma diferida y confiable. La
implementación en el motor Oracle asegura la alta
disponibilidad y persistencia de los mensajes para
diversas implementaciones, en particular bajo la
plataforma J2EE, es decir, soporte a JMS.
Workflow
Oracle incorpora, dentro del motor de base de datos,
un motor de Workflow. El motor de Workflow esta
basado en un API abierto el cual permite definir todo
tipo de flujos. El API permite que las actividades
desde y hacia el Workflow trabajen con cualquier tipo
de herramienta o aplicación que pueda hablar con la
base de datos. De la misma forma, las notificaciones
pueden ser vistas vía Web o los sistemas de mail
estándares.

Seguridad
Oracle agrega diversos mecanismos de autenticación
y seguridad al motor, entre los más relevantes están
“Virtual Private Database” que permite la definición
de seguridad a nivel fila/columna, soporte a
certificados digitales, incorporación de un servidor
LDAP basado en Oracle, etc.
Intermedia
La componente Intermedia de Oracle permite
almacenar y manipular todo tipo de datos dentro del
motor Oracle. Esto quiere decir que además de
almacenar como campos de la base (o en forma
externa según necesidades), permite la manipulación
inteligente vía SQL de ese dato. Entre los más
relevantes se cuentan:
• Texto : Permite almacenar documentos de tipo
texto en diversos formatos, tales como
archivos planos, Acrobat, HTML, XML, Microsoft
Word en sus diferentes versiones, etc. Además
de almacenarlo, permite vía sentencias SQL, la
creación de índices sobre el contenido,
búsquedas de tipo Text Retrieval sobre ese
contenido, etc.
• Imágenes: Permite almacenar y manipular vía
SQL imágenes almacenadas en la base de
datos para rotarlas, realizar escalamientos,
buscar imágenes comparando su similitud
visual, etc.
• Otros: En general, poder almacenar y
manipular cualquier tipo de datos, archivo,
multimedia.

Disponibilidad
La garantía de alta disponibilidad de un sistema no
depende solamente de la correcta ejecución de los
programas de software. En el análisis de
requerimientos de alta disponibilidad se deben
contemplar todos los componentes involucrados
(redes, placas de red, computadoras, servidores,
firewalls, balanceadores, etc.). Asimismo, existen
otros factores que deben ser considerados para la
continua operación de sistemas, estos factores van
desde los errores humanos hasta los desastres
naturales. Es posible separar cada una de las capas
de la arquitectura en distintos equipos a fin de
brindar una mayor tolerancia a las fallas y una mejor
disponibilidad de los sistemas en caso de ser
requerido. Las opciones de máxima pueden verse en
el siguiente gráfico:

A efectos de obtener mayores grados de


disponibilidad los componentes de software de la
aplicación pueden ser distribuidos en la capa de
aplicación de forma que se garantice su
disponibilidad. Asimismo, para acompañar esta
disponibilidad con los equipos físicos se utiliza
redundancia de los mismos (o entre dominios dentro
de un mismo servidor) con una distribución de carga
entre ellos, como se muestra en el siguiente
esquema.
Asimismo, cuando se requiera una disponibilidad de
datos mayor es factible configurar dos o más
servidores de datos en paralelo (o dominios dentro de
un servidor), en modalidad Oracle Real Application
Clusters.