Está en la página 1de 31

Arquitectura Cliente-Servidor

Marco FLORES
mfloresr@uni.edu.pe
Permite pasar del uso de
terminales tontas al uso de
computadoras con una
determinada capacidad de
procesamiento
Modelos de computación

 Computación centralizada.

 Computación cliente-servidor.
Computación centralizada
Las aplicaciones corren en el
mainframe, este recibe los
requerimientos de las
terminales, los procesa y los
presenta en la pantalla del
terminal.
No existe mayor cordinación
entre el mainframe y la terminal.
Computación Cliente-
Servidor
El trabajo de procesar los datos
es compartido entre el cliente y
el servidor.
Existe una estrecha relación
entre los clientes que solicitan
los servicios y los servidores que
los proporcionan.
El proceso Cliente-Servidor

 El cliente requiere los datos.


 El requerimiento es traducido a un lenguaje
de consultas como SQL.
 El requerimiento SQL es enviado al servidor a
través de la red.
 El servidor busca los datos en los
computadores que contienen los datos.
 El registro requerido es devuelto al cliente.
 Los datos son presentados al usuario.
Componentes de un
ambiente Cliente-Servidor

 La aplicación, tambien conocida como el


cliente o front end, y
 El servidor, tambien conodico como back
end.
El cliente

 Presenta una interface al usuario.


 Le da un formato al requerimiento de
datos.
 Muestra los datos recibidos desde el
servidor.
Herramientas front end

 Herramientas de consulta.Hacen uso de


consultas predefinidas y reportes
prediseñados.
 Aplicaciones de usuario. Por ejemplo,
Excel permite el acceso a datos back end.
 Herramientas de desarrollo. Permiten el
desarrollo de clientes front end, es el caso
de Visual Basic.
El servidor

 Generalmente, dedicado al almacenamiento


y procesamiento de los datos.
 Recibe los requerimientos estructurados del
cliente, los procesa y devuelve los
resultados al cliente a través de la red.
 El procesamiento back end incluye el
ordenamiento de datos, la extracción de
datos y devolución de resultados al usuario.
Procedimientos almacenados
(stored procedures)
Rutinas cortas preprocesadas
que residen en el servidor y
pueden ser usadas por todos los
clientes.
Reducen el tráfico en la red y
ahorran el espacio de disco y
memoria de los clientes.
Diseño de un sistema
Cliente-Servidor
Etapas de diseño

 Etapa Conceptual.
 Etapa Lógica.
 Etapa Física.
 Etapa Futura.
Etapa Conceptual
En esta etapa se
desarrollan los escenarios
de uso.
El énfasis es puesto en la
resolución de un problema
específico y la propuesta
de una solución acorde a
los requerimientos de los
Etapa Lógica
En la etapa lógica se
derivan los objetos y sus
servicios necesarios.
Conduce a la evaluación de
diferentes opciones físicas
y a la propuesta final que
se le hará al equipo de
desarrollo.
Etapa Física
En esta etapa se asignan los
objetos y sus servicios a
componentes físicos.
Los componentes físicos se
corresponden en todo momento
con los objetos lógicos.
Se considera la mejora de la
infraestructura y la tecnología,
para reducir riesgos y acortar el
Etapa Futura
Es esta etapa se
consideran los futuros
escenarios del negocio y se
planifica las actividades
que están por venir.
Consideraciones en el cliente
y en el servidor
Debe ser posible correr la
aplicación en el servidor.
Las aplicaciones de usuario deben
incluir un juego de componentes
clientes.
Los componentes del servidor
debe incluir los archivos
ejecutables, librerías y cualquier
otro archivo que necesite ser
Clientes inteligentes
Ejecutan los servicios de
presentación y la lógica del
negocio.
El servidor actúa como una
base de datos.
Servidores inteligentes
Son aquellos que realizan los
servicios de presentación y las
reglas del negocio.
La lógica del negocio esta
escrita en stored procedures y
se almacenan dentro de la
Soluciones Multi-tier
La interface del usuario, las
reglas del negocio y las bases de
datos residen en forma separada.
Tres son las categorías de
servicios en una solución multi-
tier: servicios de datos, servicios
de procesamiento y servicios de
usuario.
Desarrollo de aplicaciones
Cliente-Servidor
Bases de datos relacionales
Es un conjunto de tablas cuyas
columnas representan las diferentes
informaciones a manejar y las filas, los
diferentes elementos representados.
Las filas se denominan registros, y las
columnas, campos.
Una tabla

Descripción Cantidad Precio


Procesador P-200 30 29000
SIMM 32 Mb - 72cont. 65 23000

 Una tabla es una colección de datos acerca de


un tema específico. Una tabla organiza datos en
filas (llamadas registros) y columnas (llamadas
campos).
Enlaces entre tablas
Permite encontrar informaciones de una
tabla a partir de las informaciones de otra,
permitiendo así almacenarlas una sola vez.
Para enlazar una tabla con otra, es
necesario por lo menos un campo común
que determine de forma única un registro
de la segunda. Esto es lo que
denominamos clave.
Manipulación de bases de
datos

Tradicionalmente se usan
Sistemas de Gestión de
Bases de Datos SGBD,
actualmente tenemos:
Las vistas

Son conjuntos de campos que


cumplen una condición dada y
son visualizados o usados para
la creación de otros campos.
Las consultas
Para acceder a las diferentes
informaciones (los datos) en las
bases, emitimos consultas.
Usando un lenguaje de
consultas, como SQL, solamente
la consulta se transmite al
servidor que debe tratarla y
Los índices
Un índice recupera el orden de
los registros de una tabla, según
ciertos criterios. Así, cuando se
añade un registro, basta con
actualizar el índice que sólo
comprende números sin tocar el
orden de la propia tabla cuyos
registros pueden ocupar mucho
más espacio y sería pues más
Microsoft SQL Server

Es un sistema de administración de bases


de datos relacionales escalable y de alto
desempeño para redes que usan Windows
NT.
Características ofrecidas a
los desarrolladores

 Stored Procedures
 Transact-SQL
 Triggers
 Cursores en el lado del servidor

También podría gustarte