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
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

Cliente servidor1

  • 1.
  • 2.
    Permite pasar deluso de terminales tontas al uso de computadoras con una determinada capacidad de procesamiento
  • 3.
    Modelos de computación Computacióncentralizada. Computación cliente-servidor.
  • 4.
    Computación centralizada Las aplicacionescorren 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.
  • 5.
    Computación Cliente- Servidor El trabajode 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.
  • 6.
    El proceso Cliente-Servidor Elcliente 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.
  • 7.
    Componentes de un ambienteCliente-Servidor La aplicación, tambien conocida como el cliente o front end, y El servidor, tambien conodico como back end.
  • 8.
    El cliente Presenta unainterface al usuario. Le da un formato al requerimiento de datos. Muestra los datos recibidos desde el servidor.
  • 9.
    Herramientas front end Herramientasde 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.
  • 10.
    El servidor Generalmente, dedicadoal 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
  • 11.
    Procedimientos almacenados (stored procedures) Rutinascortas 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.
  • 12.
    Diseño de unsistema Cliente-Servidor
  • 13.
    Etapas de diseño EtapaConceptual. Etapa Lógica. Etapa Física. Etapa Futura.
  • 14.
    Etapa Conceptual En estaetapa 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
  • 15.
    Etapa Lógica En laetapa 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.
  • 16.
    Etapa Física En estaetapa 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
  • 17.
    Etapa Futura Es estaetapa se consideran los futuros escenarios del negocio y se planifica las actividades que están por venir.
  • 18.
    Consideraciones en elcliente 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
  • 19.
    Clientes inteligentes Ejecutan losservicios de presentación y la lógica del negocio. El servidor actúa como una base de datos.
  • 20.
    Servidores inteligentes Son aquellosque 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
  • 21.
    Soluciones Multi-tier La interfacedel 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.
  • 22.
  • 23.
    Bases de datosrelacionales 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.
  • 24.
    Una tabla Descripción CantidadPrecio 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).
  • 25.
    Enlaces entre tablas Permiteencontrar 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.
  • 26.
    Manipulación de basesde datos Tradicionalmente se usan Sistemas de Gestión de Bases de Datos SGBD, actualmente tenemos:
  • 27.
    Las vistas Son conjuntosde campos que cumplen una condición dada y son visualizados o usados para la creación de otros campos.
  • 28.
    Las consultas Para accedera 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
  • 29.
    Los índices Un índicerecupera 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
  • 30.
    Microsoft SQL Server Esun sistema de administración de bases de datos relacionales escalable y de alto desempeño para redes que usan Windows NT.
  • 31.
    Características ofrecidas a losdesarrolladores Stored Procedures Transact-SQL Triggers Cursores en el lado del servidor