Sei sulla pagina 1di 4

Arquitectura cliente-servidor La arquitectura cliente-servidor es un modelo de aplicacin distribuida en el que las tareas se reparten entre los proveedores de recursos

o servicios, llamados servidores, y los demandantes, llamados clientes. Desde el punto de vista funcional, se puede definir la computacin Cliente/Servidor como una arquitectura distribuida que permite a los usuarios finales obtener acceso a la informacin en forma transparente an en entornos multiplataforma. [En el modelo cliente servidor, el cliente enva un mensaje solicitando un determinado servicio a un servidor (hace una peticin), y este enva uno o varios mensajes con la respuesta (provee el servicio) (Ver Figura 5.1). En un sistema distribuido cada mquina puede cumplir el rol de servidor para algunas tareas y el rol de cliente para otras.]

Elementos principales Cliente [El cliente es el proceso que permite al usuario formular los requerimientos y pasarlos al servidor, se le conoce con el trmino front-end.] [Conjunto de Software y Hardware que invoca los servicios de uno o varios servidores. [El Cliente normalmente maneja todas las funciones relacionadas con la manipulacin y despliegue de datos, Sus caractersticas son: Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo en la comunicacin (dispositivo maestro o amo). Espera y recibe las respuestas del servidor. Por lo general, puede conectarse a varios servidores a la vez. Normalmente interacta directamente con los usuarios finales mediante una interfaz grfica de usuario. Al contratar un servicio de redes, se debe tener en cuenta la velocidad de conexin que le otorga al cliente y el tipo de cable que utiliza, por ejemplo : cable de cobre ronda entre 1 ms y 50 ms. Servidor [Es el proceso encargado de atender a mltiples clientes que hacen peticiones de algn recurso administrado por l. Al proceso servidor se le conoce con el trmino back-end.]

[Conjunto de Hardware y Software que responde a los requerimientos de un cliente.] [El servidor normalmente maneja todas las funciones relacionadas con la mayora de las reglas del negocio y los recursos de datos. El trmino "servidor" se suele utilizar tambin para designar el hardware, de gran potencia, capacidad y prestaciones, utilizado para albergar servicios que atienden a un gran nmero de usuarios concurrentes. Sus caractersticas son: Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempean entonces un papel pasivo en la comunicacin (dispositivo esclavo). Tras la recepcin de una solicitud, la procesan y luego envan la respuesta al cliente. Por lo general, aceptan conexiones desde un gran nmero de clientes (en ciertos casos el nmero mximo de peticiones puede estar limitado). No es frecuente que interacten directamente con los usuarios finales.

En una arquitectura cliente-servidor, el cliente se comunica directamente con el servidor de la Base de Datos para resolver sus consultas (ver Figura 1). Esta arquitectura surgi a finales de los aos ochenta con las aplicaciones desarrolladas para las LANs, y en principio fue basada en aplicaciones del tipo xBase (Clipper, DBASE, FoxPro, ...) en los clientes que compartan archivos de datos en un servidor y se encargaban ellos mismos de extraer los datos necesarios de estos archivos. As se fue evolucionando con el surgimiento de los Manejadores de Base de Datos (DBMSs) sustituyendo a los archivos compartidos. Con esta evolucin se mejor significativamente en lo que respecta a la performance de los sistemas, ya que el DBMS se encarga de resolver la consulta del cliente optimizando en lo que pueda su ejecucin, as como tambin se encarga de devolver al cliente los resultados evitando trficos de red innecesarios.

Con el paso del tiempo y el advenimiento explosivo de aplicaciones con un gran nmero de clientes (cientos o miles) comenzaron a surgir problemas de performance y escalabilidad en la arquitectura de dos capas por la gran carga que significaba cada cliente comunicndose directamente con el servidor. As, la arquitectura de tres capas (o tambin llamada arquitectura de n-capas, ya que la capa del medio puede consistir en varias subcapas) surgi en los aos noventa para dar solucin a las limitaciones de las arquitecturas de dos capas. La capa del medio est ubicada entre el cliente y el servidor de la Base de Datos y se encarga de alojar la lgica y las reglas de negocios de la aplicacin, liberando muchas veces de esta responsabilidad a los clientes.

Arquitectura de tres capas


En el diseo de sistemas informticos actual se suelen usar las arquitecturas multinivel o programacin por capas. En dichas arquitecturas a cada nivel se le confa una misin simple, lo que permite el diseo de arquitecturas escalables. El diseo ms utilizado actualmente es el diseo en tres niveles (o en tres capas).

Capas y niveles
1. Capa de presentacin: es la que ve el usuario (tambin se la denomina "capa de usuario"), presenta el sistema al usuario, le comunica la informacin y captura la informacin del usuario en un mnimo de proceso (realiza un filtrado previo para comprobar que no hay errores de formato). Tambin es conocida como interfaz grfica y debe tener la caracterstica de ser "amigable" (entendible y fcil de usar) para el usuario. Esta capa se comunica nicamente con la capa de negocio. 2. Capa de negocio: es donde residen los programas que se ejecutan, se reciben las peticiones del usuario y se envan las respuestas tras el proceso. Se denomina capa de negocio (e incluso de lgica del negocio) porque es aqu donde se establecen todas las reglas que deben cumplirse. Esta capa se comunica con la capa de presentacin, para recibir las solicitudes y presentar los resultados, y con la capa de datos, para solicitar al gestor de base de datos para almacenar o recuperar datos de l. Tambin se consideran aqu los programas de aplicacin. 3. Capa de datos: es donde residen los datos y es la encargada de acceder a los mismos. Est formada por uno o ms gestores de bases de datos que realizan todo el almacenamiento de datos, reciben solicitudes de almacenamiento o recuperacin de informacin desde la capa de negocio. Todas estas capas pueden residir en un nico ordenador, si bien lo ms usual es que haya una multitud de ordenadores en donde reside la capa de presentacin (son los clientes de la arquitectura cliente/servidor). Las capas de negocio y de datos pueden residir en el mismo ordenador, y si el crecimiento de las necesidades lo aconseja se pueden separar en dos o ms ordenadores. As, si el tamao o complejidad de la base de datos aumenta, se puede separar en varios ordenadores los cuales recibirn las peticiones del ordenador en que resida la capa de negocio. Si, por el contrario, fuese la complejidad en la capa de negocio lo que obligase a la separacin, esta capa de negocio podra residir en uno o ms ordenadores que realizaran solicitudes a una nica base de datos. En sistemas muy complejos se llega a tener una serie de ordenadores sobre los cuales corre la capa de negocio, y otra serie de ordenadores sobre los cuales corre la base de datos. En una arquitectura de tres niveles, los trminos "capas" y "niveles" no significan lo mismo ni son similares. El trmino "capa" hace referencia a la forma como una solucin es segmentada desde el punto de vista lgico:

Presentacin. Lgica de Negocio. Datos.

En cambio, el trmino "nivel" corresponde a la forma en que las capas lgicas se encuentran distribuidas de forma fsica. Por ejemplo: Una solucin de tres capas (presentacin, lgica del negocio, datos) que residen en un solo ordenador (Presentacin+lgica+datos). Se dice que la arquitectura de la solucin es de tres capas y un nivel. Una solucin de tres capas (presentacin, lgica del negocio, datos) que residen en dos ordenadores (presentacin+lgica por un lado; lgica+datos por el otro lado). Se dice que la arquitectura de la solucin es de tres capas y dos niveles.

Potrebbero piacerti anche