Você está na página 1de 24

o LA WORLD WIDE WEB o LENGUAJE DE CDIGO HTML o PROTOCOLO HTTP o ARQUITECTURA CLIENTE - SERVIDOR

LA WORLD WIDE WEB

El explosivo crecimiento que ha tenido Internet en los ltimos aos se ha debido, fundamentalmente, a la aparicin de una herramienta que por simplicidad de manejo y potencialidades, ha cautivado a una gran masa de usuarios no necesariamente adentrados en el mundo computacional. La World Wide Web ("telaraa de alcance mundial") o simplemente la Web, tuvo sus orgenes en 1989 en el CERN (Centro Europeo para la Investigacin Nuclear) ubicado en Ginebra (Suiza), en circunstancias en que el investigador britnico Tim Berners-Lee se dedicaba a encontrar una solucin efectiva al problema de la proliferacin y la heterogeneidad de la informacin disponible en la Red. Integrando servicios ya existentes en Internet (como el muy utilizado Gopher por esa poca) Berners-Lee desarroll la arquitectura bsica de lo que actualmente es la Web. El mismo Berners-Lee la describa de la siguiente manera: "La WWW es una forma de ver toda la informacin disponible en Internet como un continuo, sin rupturas. Utilizando saltos hipertextuales y bsquedas, el usuario navega a travs de un mundo de informacin parcialmente creado a mano, parcialmente generado por computadoras de las bases de datos existentes y de los sistemas de informacin". En 1990 se desarroll un primer prototipo, pero slo a partir de 1993, cuando el NCSA (Centro Nacional de Aplicaciones de Supercomputadoras) de la Universidad de Illinois introdujo el primer "cliente" grfico para la WWW, denominado Mosaic, la comunidad de usuarios de Internet comenz su empleo en forma exponencial. A partir de all y hasta nuestros das, es usual que la gente no dedicada al tema confunda, y con razn, a Internet con la Web.

LOS ORGENES DE LA WEB


Si bien, como hemos sealado, podemos considerar a Tim Berners-Lee como el arquitecto de la Web, las ideas intrnsecas de su funcionamiento tienen sus orgenes medio siglo atrs, cuando el prestigioso cientfico norteamericano Vannevar Bush public en "The Atlantic Monthly" de julio de 1945 un artculo denominado "As we may think" ("Como nosotros pensamos") donde describa un curioso dispositivo al cual llamaba Memex (Memoria Extendida) que almacenaba gran cantidad de informacin que el usuario poda consultar con cierta rapidez y flexibilidad mediante "vnculos" que las unan en forma no secuencial. Bush pensaba que este tipo de asociaciones se pareca ms al funcionamiento (a veces errtico) de nuestra forma mental de organizar la informacin que a las maneras tradicionales de almacenamiento, como los libros. Si bien los conceptos futuristas de Bush tenan un alto grado de prediccin con lo que actualmente conocemos, la tecnologa de la poca no le permiti plasmar en la realidad sus ideas, tal como aos atrs haba ocurrido con otro visionario: Charles Babbage, el inventor de la computadora. La posta de Bush fue tomada en 1965 por otro norteamericano, Ted Nelson, quien acu los trminos "hipertexto" e "hipermedia", y se refera a ellos como "cuerpos de material escrito o grfico interconectados de un modo complejo que no se puede representar convenientemente sobre el papel". Dos aos ms tarde Nelson present en sociedad su software "Xanad" que posibilitaba la creacin de textos no lineales ni secuenciales. Sin embargo, fue recin en la dcada del 80, con el advenimiento de las computadoras personales, y la proliferacin de aplicaciones para stas, cuando el "hipertexto" se hizo conocido. El golpe de gracia hacia su popularizacin se produjo en estos ltimos aos con la aparicin de computadoras con potencialidades multimediales, y dispositivos de gran capacidad de almacenamiento digital como los CD-ROMs y Laser Disks. Cualquier usuario de una PC, an no demasiado avezado, sabe hoy en da, que cuando al pasar la flecha del mouse por una determinada palabra o zona, y sta se transforma en

una "manito" con un "dedo sealador", est en presencia de un vnculo que lo llevar a agregar informacin.

MULTIMEDIA, HIPERTEXTO E HIPERMEDIA


Antes de adentrarnos en las caractersticas propias de la Web, y en funcin de los orgenes de la misma explicados en el punto anterior, conviene definir previamente los conceptos de multimedia, hipertexto e hipermedia que generalmente se utilizan como sinnimos pero que, como veremos, no lo son. Decimos que estamos en presencia de un documento multimedia (o con capacidades multimediales) cuando en l se combinan textos, imgenes, fotografas, audio, sonido, animaciones, video y cualquier otro tipo de datos en forma digital.

Los "juegos para computadora" son tpicamente multimediales ya que all se encuentran textos que se dan como consignas u orientaciones, sonidos de tipo ambiental, audio de la voz de un personaje, animaciones y eventualmente (dependiendo de de produccin del videos. la calidad juego)

Un documento hipertextual es aquel en el cual existen relaciones (enlaces) entre las palabras o conjuntos de palabras que lo componen, tanto dentro del mismo como hacia otros, mediante un sistema de ndices que los vincula. El clsico ejemplo de un documento hipertextual "puro" (slo texto) son las ayudas tanto de Windows como de los programas en este entorno: al pulsar sobre un tem del contenido de la ayuda, ste nos remite a un documento que nos ampla la informacin.

Finalmente si a una presentacin multimedial le agregamos la capacidad de vincularse o "navegar" por la misma, estamos en presencia de un documento hipermedial. Las actuales enciclopedias en CD-ROM, son una clara muestra de este tipo de documentos donde se combinan la riqueza de la informacin en sus diferentes formas con las posibilidades de acceder a ella en forma no secuencial, de acuerdo al camino elegido por el usuario.

CARACTERSTICAS DE LA WEB
Segn su propio creador, Berners-Lee, la Web es un sistema que presenta las siguientes caractersticas: 1) Hipermedial: en la Web podemos manejar informacin multimedial y navegar a travs de ella. 2) Distribuido: a diferencia de las antiguas y enormes bases de datos que concentraban la informacin fsicamente en un nico lugar, la Web es un sistema compuesto por miles de servidores localizados en cientos de ciudades del mundo que estn interconectadas entre s. 3) Heterogneo: por ser un servicio relativamente nuevo, la Web tiene la ventaja de poder reunir servicios y protocolos ms antiguos (como Gopher, los News, FTP, e inclusive el correo electrnico), de modo tal de presentar la informacin desde un nico programa cliente. 4) Colaborativo: sta es una caracterstica sustancial y la que posiblemente le haya dado el mayor empuje a su crecimiento, ya que cualquier persona, en cualquier parte del mundo, puede agregar informacin a la Web para que luego pueda ser consultada por el resto de los usuarios.

CONCEPTOS BSICOS EN LA WEB


Si bien la Web es el servicio ms "amistoso" para un usuario, tanto novel como avanzado, detrs de esas pantallas cargadas de informacin de diverso tipo se encuentran una serie de herramientas y estructuras, muy complejas en algunos casos, que justamente posibilitan un acceso ms transparente. Veamos cada una de ellas:

1) Browsers En una arquitectura de tipo cliente-servidor, el usuario interacta y obtiene informacin desde su computadora a travs de una aplicacin cliente. En la Web estas aplicaciones se conocen bajo el nombre genrico de "browsers" (tambin llamadas en nuestro idioma

"visores", "visualizadores", "navegadores" o "exploradores"), y cumplen dos funciones bsicas: Transmitir a los servidores remotos las rdenes que le imparte el usuario, y Presentar la informacin en forma asequible a quien la solicite.

Mosaic desarrollado en 1993 por la NCSA (Centro Nacional para Aplicaciones de Supercomputadoras) fue, como sealamos, el primer browser que sali al mercado, y que le dio popularidad a la Web. Actualmente ha sido discontinuado. Slo un ao ms tarde, una nueva empresa Netscape- desarroll su browser, llamado Navigator, que prontamente acapar casi un 80% del mercado, convirtindolo as en un "browser estndar de hecho". Desde su versin 2, Netscape Navigator logr imponer cierta nueva cosmtica entre los desarrolladores de pginas Web, mediante el empleo de tablas y "frames" (paneles o marcos), a la vez que facilit la incorporacin de "plug-ins" (pequeos programas que cumplen una funcin adicional dentro del mismo browser) y otras funcionalidades como el poder ejecutar los applets de Java (ver Cap.16) y una mayor seguridad a la hora de realizar transacciones comerciales "va Web". Durante 1996 Netscape sac a la luz su versin 3 del Navigator con nuevas extensiones del lenguaje HTML (ver Cap. 16) y mayor rapidez al ejecutar programas en Java.

En junio de 1997, Netscape lanz la versin 4 de su Navigator, esta vez dentro de una suite (paquete integrado) denominado Communicator que adems incluye a Messenger (correo electrnico), Collabra (lector de news groups), Composer (diseo de pginas web) y Conference (software de conferencias en tiempo real). Con altibajos, y sin cambios estructurales profundos, las versiones se fueron sucediendo hasta llegar a la actual 7.0. Puede consultarse mayor informacin sobre los productos de Netscape en: http://www.netscape.com

Finalmente, y de la mano de la mayor empresa de software del mundo, lleg el nuevo contendiente: Microsoft Internet Explorer. Su versin 2 (luego de una efmera versin inicial que acompaaba al recin salido Windows 95) no fue lo suficientemente robusta como para desbancar el casi monopolio que por esos momentos ejerca Netscape Navigator 2. Sin embargo, y como producto de una muy inteligente y agresiva estrategia comercial, respaldada por un fuerte soporte de investigacin y desarrollo, la empresa de Bill Gates introdujo hacia mediados del '96 su Internet Explorer 3 con importantes mejoras, entre las cuales se pueden mencionar: la capacidad de enviar y de recibir correo electrnico desde el mismo browser; los controles ActiveX (una readaptacin de la tecnologa OLE para la Web) que permiten la incrustacin de objetos -como documentos Word o Excelen las propias pginas Web; manejo de extensiones de HTML en nivel 3; personalizacin de la interfaz de usuario; y soporte para Java Script e integracin de applets Java. Esto posibilit una equiparacin entre las versiones 3, de Netscape y de Microsoft, en cuanto a potencialidades se refiere. A partir de ese momento, el estndar de hecho dentro del mercado de los navegadores pas a ser Internet Explorer, ya que en las sucesivas versiones introdujo mejoras, tanto en su esttica como en su funcionalidad, que no pudieron ser contrarrestadas por Netscape.

Actualmente, Internet Explorer acapara el 96 % del mercado de navegadores. En su ltima versin, la 6, Internet Explorer es un conjunto slido de programas, que adems del explorador, incluye: Outlook

Express:

proporciona

funciones

avanzadas

para

correo

electrnico y News groups (ver Cap. 4 y Cap. 6). Front Page Express: facilita la creacin y edicin de pginas web. Mensajero Instantneo: con el cual es posible enviar mensajes en lnea a los contactos que tengamos en nuestra lista (ver Cap. 8) Reproductor multimedia: mediante el cual se pueden escuchar y ver los archivos ms populares que se hallan en Internet.

En este libro, se emplear la versin 6 de Internet Explorer, fundamentalmente por encontrarse totalmente traducido a nuestro idioma, y por su carcter gratuito.

2) El protocolo HTTP Tal como vimos en el Cap. 1, Internet tiene su fundamento en base a protocolos estndares, sin los cuales no podra funcionar. Si bien el protocolo subyacente es el TCP/IP, para ciertas funciones particulares son necesarios otros protocolos, como en el caso especfico de la

Web, donde fue necesario crear un protocolo que resolviese los problemas planteados por un sistema hipermedial, y sobre todo distribuido en diferentes puntos de la Red. Este protocolo se denomin HTTP (HyperText Transfer Protocol, o Protocolo de Transferencia de Hipertexto), y cada vez que se activa cumple con un proceso de cuatro etapas entre el browser y el servidor que consiste en lo siguiente: Conexin: el browser busca el nombre de dominio o el nmero IP de la direccin indicada intentando hacer contacto con esa computadora. Solicitud: el browser enva una peticin al servidor (generalmente un documento), incluyendo informacin sobre el mtodo a utilizar, la versin del protocolo y algunas otras especificaciones. Respuesta: el servidor enva un mensaje de respuesta acerca de su peticin mediante cdigos de estado de tres dgitos. Desconexin: se puede iniciar por parte del usuario o por parte del servidor una vez transferido un archivo.

3) El lenguaje HTML El HTML (HyperText Markup Lenguage, o Lenguaje de Mercado para Hipertexto) es el lenguaje en el cual estn escritos los documentos hipertextuales para la Web. Mediante este lenguaje de etiquetas, o conjunto de especificaciones

estandarizadas (y sencillas), se pueden dar instrucciones para que un browser determinado (que se ajuste a esos estndares) "entienda" qu hacer con un documento, e independientemente de las plataformas pueda darle formato al texto (negrita, centrado, etc.), crear vnculos hipertextuales, insertar imgenes, o crear formularios, entre otras posibilidades. Tal como se ver en detalle en el Cap. 16, ("Construccin de una pgina para la Web"), un documento HTML no es ms que texto en ASCII conteniendo marcas o "tags" (que comienzan con el signo "<" y terminan con el signo ">").

Desde sus orgenes, y de acuerdo a las necesidades de los desarrolladores de pginas Web, HTML ha ido incorporando nuevas extensiones de instrucciones, conformando as las versiones, denominadas niveles, que van desde el 0 al HTML Dinmico, que avanza hacia un mayor nivel de interactividad en el diseo de pginas web que incluye:
o

Efectos multimedia sin necesidad de descargar grandes archivos (con la consiguiente lentitud) por parte del usuario.

o o

Reduccin de trfico de red innecesario y baja carga del servidor. Contenidos ms dinmicos que pueden ser modificados por los usuarios en su computadora para que stos puedan cambiar los atributos.

Lamentablemente no todos los browsers interpretan un documento HTML de la misma forma, de modo tal que la "cosmtica" de un documento puede variar de un browser a otro.

4) El sistema de direccionamiento URL La forma en que se localizan recursos en la Web proviene del empleo de un sistema notacional, URL (Uniform Resourse Locator, o Ubicador Uniforme de Recursos) que hace posible los saltos hipertextuales. Bsicamente, un URL es un puntero a un objeto de Internet. En su sintaxis nos proporciona, de forma compacta, y bastante inteligible, la informacin necesaria para acceder a un recurso en Internet. Dicha informacin contiene, como mnimo, el protocolo de acceso (http para una pgina en la Web, ftp para transferencia de

archivos, gopher para un documento hipertextual puro en el espacio Gopher, etc.), el nombre del servidor remoto, y el camino y nombre del documento. Una vez que el recurso es localizado, se transfiere una copia al usuario quien en definitiva decide qu hacer con el mismo.

IDENTIFICANDO UNA DIRECCIN EN LA WEB


Para acceder a una pgina en la Web, deberemos conocer su direccin, o URL. Una direccin tpica de una pgina web podra tener la siguiente estructura:

OTROS CONCEPTOS ASOCIADOS A LA WEB


1) Links Los links, o vnculos, son la caracterstica bsica de un documento hipertextual o hipermedial, ya que los mismos son referencias dinmicas que nos permiten "saltar" de un lugar a otro en forma instantnea. Desde el surgimiento de una aplicacin predecesora de la Web, denominada Gopher, cuya diferencia fundamental es que slo posibilitaba el manejo de documentos hipertextuales puros (sin imgenes u otro tipo de informacin multimedial), el trmino "navegar" o "surfear" Internet tiene una directa relacin con la capacidad de "saltar" de un lado a otro, independientemente de la distancia fsica que exista entre ambos documentos.

En los browsers, los links de texto suelen estar subrayados en un color distinto al del resto del documento, y tanto en stos como en las imgenes que tienen vnculos, la flecha sealadora del mouse se transforma en una "manito" con un "dedo sealador" al pasar encima de ellos.

2) Site Un site, o sitio o lugar en la Web, es el conjunto de pginas de una organizacin o persona determinada. As, cuando se hace mencin al sitio de Microsoft, se da su direccin como: http://www.microsoft.com Sin embargo, fsicamente un site no siempre est en un nico servidor (aun cuando su direccin sea la misma) ya que por cuestiones de demanda, como en el caso mencionado de Microsoft (que es accedido millones de veces por da) se requiere ms de un servidor para atender tantos pedidos. De todas formas, la informacin es idntica tanto en el servidor "principal" como en los "mirrors" (o espejos). Lo usual es que un servidor, como en el caso de los proveedores locales de Internet, atiendan o sean "anfitriones" de varios sites.

3) Home Page Dentro del conjunto de pginas que eventualmente pueden conformar un sitio en la Web, se denominan Home Page a la pgina de inicio, es decir aquella que se cargar en primera instancia, y que generalmente tiene un mensaje de bienvenida, y un men con diferentes opciones, con sus respectivos links. Y si bien en la mayora de los casos la Home Page es la primera pgina del sitio que el usuario puede observar, en algunas ocasiones (por ejemplo en los lugares con pago requerido) se accede previamente a una pgina de ingreso de contrasea y, una vez validada correctamente, se puede ingresar a la Home Page propiamente dicha de ese lugar.

TIEMPO DE ACCESO A UNA PGINA WEB


Uno de los temas ms controvertidos en Internet es el tiempo de acceso a una determinada pgina en la Web, sobre todo si se cuenta con una conexin telefnica va mdem. Ahora bien, la famosa lentitud que aqueja a los usuarios acostumbrados a manejar la Web, se debe no a uno, sino a una conjuncin de factores que hace que esto sea as. En principio podemos sealar que el tiempo de "llegada" a nuestra computadora de una pgina Web depender de:

La pgina elegida, y Dnde est ubicada fsicamente: si bien en Internet todos los puntos estn interconectados entre s, es lgico suponer que aquellas localidades que dispongan de enlaces troncales ms slidos tendrn una respuesta ms rpida. Qu cantidad de accesos tenga: en ciertos sitios de alto grado de "concurrencia" por parte de los usuarios, se producen ciertos "cuellos de botella" (saturacin del ancho de banda) que lentifican la conexin. Qu cantidad de grficos posea: las pginas multimediales, con grandes grficos, backgrounds (fondos) y/o msica son, en general, de bajada lenta.

1) La hora de conexin: es usual hacer mencin a que "de noche" Internet es ms rpido. Esto es una verdad a medias, ya que otros lugares con los cuales nos conectamos en horario nocturno para nosotros, podran estar en plena actividad diurna de acuerdo a su huso horario.

2) El equipo que se posea: obviamente no ser lo mismo conectarnos a travs de una PC 486 con 16 Mb de RAM y un mdem de 14400 bps que con una Pentium III 1 Ghz con 128 Mb de RAM y un mdem de 56 kbps.

3) La eficacia de nuestro proveedor: fundamentalmente habr que tener en cuenta cul es el ancho de banda de salida (" cao") de un proveedor, y la relacin cantidad de usuarios/lneas telefnicas que disponga. Con respecto al ancho de banda puede darse el caso que aun teniendo un cao de, por ejemplo, 128 Kbs, el proveedor en cuestin sea a su vez subproveedor de terceros, con lo cual su propio ancho de banda quedar reducido, y cuanto ms ocurra esta situacin, mayor ser la posibilidad de un

congestionamiento.

4) Otro tanto ocurre con la relacin cantidad de usuarios/lneas telefnicas. Si el proveedor dispone de 20 lneas y su masa de usuarios es de 1000, es muy probable que al querer acceder a dicho proveedor nos d "ocupado". Una buena relacin indica que 15 usuarios por lnea darn buenas posibilidades de conexin en funcin de que es dable suponer que los horarios de los usuarios para conectarse (y los respectivos bolsillos) son diferentes.

ARQUITECTURA CLIENTE SERVIDOR


1. Desde un punto de vista conceptual: Es un modelo para construir sistemas de informacin, que se sustenta en la idea de repartir el tratamiento de la informacin y los datos por todo el sistema informtico, permitiendo mejorar el rendimiento del sistema global de informacin.

2. En trminos de arquitectura: Los distintos aspectos que caracterizan a una aplicacin (proceso, almacenamiento, control y operaciones de entrada y salida de datos) en el sentido ms amplio, estn situados en ms de un computador, los cuales se encuentran interconectados mediante una red de comunicaciones.

3. Cliente/Servidor Es la tecnologa que proporciona al usuario final el acceso transparente a las aplicaciones, datos, servicios de cmputo o cualquier otro recurso del grupo de trabajo y/o, a travs de la organizacin, en mltiples plataformas. El modelo soporta un medio ambiente distribuido en el cual los requerimientos de servicios hechos por estaciones de trabajo inteligentes o "clientes'', resultan en un trabajo realizado por otros computadores llamados servidores.

QU ES UN CLIENTE?
Es el que inicia un requerimiento de servicio. El requerimiento inicial puede convertirse en mltiples requerimientos de trabajo a travs de redes LAN o WAN. La ubicacin de los datos o de las aplicaciones es totalmente transparente para el cliente.

QU ES UN SERVIDOR?
Es cualquier recurso de cmputo dedicado a responder a los requerimientos del cliente. Los servidores pueden estar conectados a los clientes a travs de redes LANs o WANs, para proveer de mltiples servicios a los clientes y ciudadanos tales como impresin, acceso a bases de datos, fax, procesamiento de imgenes, etc.

QU ES UNA ARQUITECTURA?
Una arquitectura es un entramado de componentes aprovechando funcionales diferentes que

estndares,

convenciones, reglas y procesos, permite integrar una amplia gama de productos y servicios informticos, de manera que pueden ser utilizados eficazmente dentro de la organizacin.

Debemos sealar que para seleccionar el modelo de una arquitectura, hay que partir del contexto tecnolgico y organizativo del momento y, que la arquitectura Cliente/Servidor requiere una determinada especializacin de cada uno de los diferentes componentes que la integran. Evolucin del modelo Cliente Servidor
o o

Mono-capa Data Base Server Computacin

centralizada
o o o o o

Two-Tier Proceso de transacciones Multi-tier Client/Server Three-tier Multi-tier N-tier

APLICACIONES MONO-CAPA Entendemos por aplicaciones mono-capa, aquellas que tanto la propia aplicacin como los datos que maneja se encuentran en la misma mquina y son administradas por la misma herramienta: podramos decir que son una sola entidad

Figura

1.

Arquitectura

Tpica

de

una

aplicacin de una sola capa.

MODELO EN DOS CAPAS (TWO-TIER MODEL) En una arquitectura cliente/servidor clsica tenemos dos "capas" (two-tier):

Una donde est el cliente que implementa la interface. Otra donde se encuentra el gestor de bases de datos que trata las peticiones recibidas desde el cliente.

La lgica de la aplicacin se encuentra por tanto repartida entre el cliente y servidor. Un ejemplo de esta configuracin podra ser un applet Java que se carga en el navegador del cliente y trabaja directamente con la base de datos mediante JDBC.

Figura A: Esquema de arquitectura Cliente/Servidor clsica. Ventajas de este modelo: Se mantiene una conexin persistente con la base de datos. Se minimizan las peticiones en el servidor trasladndose la mayor parte del trabajo al cliente. Se gana en rendimiento gracias a la conexin directa y permanente con la base de datos. A travs de una nica conexin se realiza el envo y recepcin de varios datos. Inconvenientes:

La ms importante desventaja, es que esta solucin es muy dependiente del tipo controlador JDBC que se utilice para acceder a la base de datos. El acceso se realiza desde el cliente y esto significa que es l el que tiene que tener instalado en su sistema los controladores necesarios para que se produzca la comunicacin con la base de datos. Adems hay que tener en cuenta que el modelo de seguridad de Java impide que desde un applet sin validar (lo que se conoce como untrusted applet), como lo son la mayora de los que se ejecutan en un navegador, se puedan realizar las siguientes operaciones: 1. El acceso general, y por supesto mediante JDBC, a bases de datos situadas en direcciones URL distintas a las que procede el mismo applet. 2. La configuracin de recursos locales como, por ejemplo, la informacin de la fuente de datos ODBC para usar el puente JDBC-ODBC. 3. La descarga de clases nativas, es decir, aquellas cuyo nombre empieza por Java. Esta restriccin afecta directamente a los navegadores que utilizan JDK 1.0.2 o anterior, pues JDBC es posterior a esta versin, de forma que las clases apropiadas no estarn instaladas localmente ni podrn ser descargadas de Internet por el applet. Finalmente debemos tener en cuenta que es bien conocido que los programas Java pueden ser descompilados muy fcilmente con lo que introducir el acceso a nuestras bases de datos mediante un applet Java conlleva un riesgo considerable en cuanto a la seguridad.

MODELO EN TRES CAPAS (THREE-TIER MODEL) Con la arquitectura cliente/servidor en tres capas (three-tier) aadimos una nueva capa entre el cliente y el servidor donde se implementa la lgica de la aplicacin. De esta forma el cliente es bsicamente una interface, que no tiene por qu

cambiar si cambian las especificaciones de la base de datos o de la aplicacin; queda aislado completamente del acceso a los datos. As un applet de Java se carga en el navegador del cliente y se comunica con un servlet que corre en la mquina servidor; o bien accedemos a la base de datos a travs de un formulario HTML. El servlet establece una conexin a la base de datos mediante JDBC. En este caso se tiene total libertad para escoger dnde se coloca la lgica de la aplicacin: en el cliente, en el servidor de base de datos, o en otro(s) servidor(es). Tambin se tiene total libertad para la eleccin del lenguaje a utilizar. Se utiliza un lenguaje de tipo general (probablemente C) por lo que no existen restricciones de funcionalidad. Los programas sern ptimos desde el punto de vista de la performance. Tambin deber implementarse especialmente el Call remoto, lo que seguramente se har de una forma ms libre que los Remote Procedure Call actualmente disponibles. No existe compromiso alguno con el uso de lenguajes propietarios, por lo que las aplicaciones sern totalmente portables sin cambio alguno. Puede determinarse en qu servidor(es) se quiere hacer funcionar estos procedimientos. En aplicaciones crticas se pueden agregar tantos servidores de aplicacin como sean necesarios, de forma simple, y sin comprometer en absoluto la integridad de la base de datos, obtenindose una escalabilidad muy grande sin necesidad de tocar el servidor de dicha base de datos. El problema de esta arquitectura es cmo se implementa? Parece ilusorio tratar de programar manualmente estos procedimientos, mientras que, si se dispone de una herramienta que lo hace automticamente, presenta ventajas claras sobre la alternativa anterior:

Figura B: Arquitectura Cliente/Servidor en tres capas (three-tier)

Como se podra esperar cada uno de los componentes de la aplicacin en una arquitectura three-tier se separa en una sola entidad. Esto te permite implementar componentes de una manera ms flexible. Algo que no creo que sorprenda es la afirmacin tipo la de ms de que este

arquitectura es compleja.

Figura 4. Arquitectura Three-Tier. En esta Arquitectura todas las peticiones de los clientes se controlan en la capa correspondiente a la lgica del negocio. Cuando el cliente necesita hacer una

peticin se la hace a la capa en la que se encuentra la lgica del negocio. Esto es bastante importante pues eso quiere decir que: 1. El cliente no tiene que tener drivers ODBCni la problemtica consiguiente de instalacin de los drivers por tanto se reduce el costo de mantener las aplicaciones cliente 2. El Cliente y el Gestor de Reglas de negocio tienen que hablar el mismo lenguaje (en nuestro caso COM) 3. El Gestor de Reglas de Negocio y el Servidor de Datos tienen que hablar el mismo lenguaje (en nuestro caso ODBC) Lo ideal sera que el Gestor de Reglas de Negocio no slo OLE y ODBC sino otros estandares como DBLib, OLI, DRDA, SQL/API y X/Open Ventajas de este modelo:
o

No existe ningn problema con respecto al tipo de controlador JDBC utilizado para acceder a la base de datos.Todos los recursos necesarios para establecer la conexin con la base de datos se encuentran en el servidor y por tanto, el cliente no necesita instalar nada adicional en su mquina para poder acceder a la base de datos.

Esta arquitectura proporciona considerables mejoras desde el punto de vista de la portabilidad de la aplicacin, escalabilidad, robustez y reutilizacin del cdigo. Asimismo facilita las tareas de migracin o cambios en el sistema gestor de la base de datos.

Desaparecen las restricciones debidas a las limitaciones de los applets impuestas por el modelo de seguridad de Java.

Inconvenientes:
o

Esta solucin es algo menos eficiente que la del modelo de dos capas, ya que hemos aadido una capa intermedia ms de software.

ARQUITECTURA DE N CAPAS Windows DNA distribuye una aplicacin entre varias capas llamadas niveles. Aunque los niveles algunas veces residen fsicamente en mquinas diferentes, Windows DNA enfatiza la distribucin lgica. Mientras que los nombres de estos niveles difieren de acuerdo a la fuente, la Gua del Desarrollador de BackOffice (BackOffice Developer's Guide, BDG) se refiere a ellos como sigue:

Servicios de usuario. Servicios de negocios. Servicios de datos. Este diagrama muestra

como varias aplicaciones y tecnologas de Microsoft

son implementadas en la arquitectura N niveles. Al leer la BDG, Usted ver como estos niveles trabajan juntos para proporcionar la funcionalidad, estabilidad y escalabilidad que las

aplicaciones empresariales requieren. Como lo indica el diagrama, Windows DNA sintetiza en las aplicaciones un conjunto comn de servicios, incluyendo HTML y HTML dinmico (DHTML), controles ActiveX, componentes del Modelo de Objeto Componente (COM), scripts en el lado cliente y en el lado servidor, transacciones, seguridad y servicios de directorio, acceso a datos y a bases de datos, administracin de sistemas y ambientes de creacin de componentes. Estos servicios son expuestos de manera unificada a travs del COM, el cual permite que las aplicaciones interoperen y compartan componentes.

Las principales ventajas del desarrollo en N niveles son respecto a la escalabilidad. Las aplicaciones que procesan su lgica de negocios, ya sea en las mquinas cliente o en las bases de datos, se vuelven lentas cuando estn siendo muy utilizadas. Esto se ha convertido en algo muy importante en esta era donde las aplicaciones de Web pueden ser utilizadas millones de veces por da. La transicin para el desarrollo N niveles no es gratis, el tiempo de desarrollo se increment debido a la complejidad de aadir otro nivel. Afortunadamente, el middleware, tal como el MTS, fue desarrollado para manejar automticamente los detalles de la infraestructura de aplicacin, tal como el manejo de procesos alternos y los detalles de COM.

Você também pode gostar