CLIENTE / SERVIDOR




                     1
Introducción
   Es una arquitectura que en este momento es una de
    las más importantes y utilizadas en el ámbito de
    enviar y recibir información, también es una
    herramienta potente para almacenar datos en una
    base de datos como servidor




                                                        2
Antecedentes
   Cliente / Servidor nació por la necesidad que tienen las
    organizaciones, de realizar sus operaciones mas eficientemente
    lo cual se reduce a que el su personal sea mas productivo y
    reduzcan los costos y gastos de operación y mantenimiento

   Al mismo que se generan productos y servicios mas
    rápidamente y con mejor calidad




                                                                     3
Características
   Servicio: Cliente/Servidor es una relación entre procesos que
    se ejecutan en maquinas independientes.
      Proceso Servidor: Proveedor de servicios

      Proceso Cliente: Consumidor de servicios




   Recursos Compartidos: Un servidor puede servir a varios
    clientes al mismo tiempo y regular su acceso a los recursos




                                                                    4
Características
   Transparencia de Ubicación: Un servidor puede residir en la
    misma maquina del cliente o en otra, en la red. Cliente/Servidor
    oculta la ubicación del servidor. Un programa puede ser cliente,
    servidor, o las dos cosas.

   Mezclar y Acoplar: Cliente/Servidor es independiente de
    plataformas de equipos o de sistemas operativos. Se puede
    mezclar plataformas de clientes y servidores (Windows/Linux,
    Linux/Windows, etc)




                                                                   5
Características
   Escalabilidad: Cliente/Servidor pueden escalarse en forma vertical y
    horizontal

        Escalamiento Horizontal: Que al quitar o agregar estaciones de
         trabajo clientes solo se produce un pequeño efecto de desempeño.

        Escalamiento Vertical: Significa Migrar (Mudar) a una máquina
         servidor más grande y rápida, o distribuir la carga de
         procesamiento entre varios servidores




                                                                         6
Características
   Encapsulado de Servicios: A través de un mensaje se le
    indica al servidor que servicio es solicitado, y depende de él la
    forma en que satisface tal solicitud. Los servidores pueden
    actualizarse sin afectar a los clientes.

   Integridad: Código y la información se administra de manera
    central, lo que da como resultado un mantenimiento más barato
    y resguardo de información compartida, al mismo tiempo los
    clientes permanecen independientes




                                                                        7
SERVIDORES




             8
Servidores de Archivos
   Solicitud de registros de archivo
   Servicio de información muy primitivo
       Muchos mensajes para obtener información
   Útiles para compartir archivos a lo largo de red.
   Son responsables para crear repositorios compartidos
    (documentos, imágenes, planos de ingeniaría y otros
    objetos de datos grandes de la red)




                                                       9
Servidores de Base de Datos
   Cliente pasa como mensajes solicitudes escritas
    en SQL (lenguaje de consulta estructurado).
   Servidor emplea su propio poder de
    procesamiento para encontrar los datos pedidos,
    en ves de entregar toda la información.
   Proveen información para la toma de decisiones
    a través de reportes y consultas
   Tienen una función vital en el almacenamiento
    masivo de información




                                                  10
Servidores de Transacciones
   Cliente llama por medio de un motor de base de datos de
    SQL a procedimientos remotos que residen en el servidor
   Procedimientos remotos (almacenados): conjunto de
    instrucciones SQL.
   Intercambio de la red consiste en un solo mensaje de
    solicitud una respuesta.
   Instrucciones SQL tienen éxito o fracasan como unidad
   Transacciones: Son instrucciones SQL agrupadas




                                                          11
Servidores GroupWare
   Se encarga de la administración de
    información como texto, imágenes,
    correo electrónico, tablero y boletines
    electrónicos.




                                              12
Servidores de Aplicaciones de Objetos
   Está escrito como un conjunto de objetos de
    comunicación.
   Los objetos clientes se comunican con objetos
    del servidor mediante un intermediario de
    solicitud de objetos (ORB object request broker).
   El cliente invoca un método sobre un objeto
    remoto del servidor, el ORB localiza una instancia
    de esa clase de objeto en el servidor, llama al
    método invocado y entrega el resultado al objeto
    al cliente




                                                    13
Servidores de Aplicaciones de Objetos
   Los servidores de objetos deben dar soporte para
    que exista concurrencia (solicitudes simultaneas)
    y comunicación.
   Un ejemplo de Servidor de Aplicaciones de
    Objetos son los servidores de aplicaciones JAVA
    (CORBA).
   Microsoft tiene su propio ORB llamado modelo de
    objetos de componentes distribuidos (DCOM,
    distributed component object model). Un modelo
    de componentes es el ActiveX.




                                                   14
Servidores de Aplicaciones WEB
   Los servidores WEB entregan documentos (Paginas WEB)
    a los clientes cuando estos los piden.
   Clientes y servidores se ponen en contacto a través de un
    protocolo denominado HTTP (protocolo de transferencia
    de).
   HTTP: Protocolo que define un conjunto simple de
    comandos.
   Servidores Web de Objetos: Un comienzo en servidores de
    WEB de objetos son los Applets de JAVA, son muy
    parecidos a los servidores de aplicaciones de objetos.




                                                           15
BLOQUES DE LA TECNOLOGÍA
    CLIENTE SERVIDOR
Bloques Básicos
   Cliente
   Diagonal (Middleware)
   Servidor
Bloques en Cuatro Situaciones
   Cliente/Servidor para tiendas pequeñas y
    tribus nómadas
       El cliente, el middleware y casi todos los
        servicios empresariales, se ejecutan en la
        misma máquina (negocios pequeños, oficinas
        caseras)
Bloques en Cuatro Situaciones
   Cliente/Servidor para tiendas pequeñas y
    Departamentos
       Implementación clásica de un tipo cliente y un solo
        servidor en redes (Tiendas pequeñas, departamentos)

   Cliente/Servidor para empresas intergalácticas
       Implementación multiservidor.
       Servidores presentan ante el cliente la imagen de un
        solo sistema.
Bloques en Cuatro Situaciones
   Cliente/Servidor para empresas
    intergalácticas
       Implementación multiservidor.
       Servidores presentan ante el cliente la
        imagen de un solo sistema.
Bloques en Cuatro Situaciones
   Cliente/Servidor para el mundo
    posterior a la escasez
       Costos de equipos sean costeables
       Toda máquina será al mismo tiempo cliente
        y servidor totalmente funcionales.
Bloque Cliente
   Corre sobre un sistema operativo que proporciona una
    interfaz gráfica de usuario (GUI).

   El Sistema Operativo pasa la responsabilidad al
    Middleware permitiéndole manejar los servicios que no
    sean locales.

   Ejecuta el componente DSM (Distributed system
    management), que puede ser una computadora personal
    hasta un programa de interfaz de la Aplicacioón
Bloque Servidor
   Ejecuta el lado servidor de la Aplicación.
   Servidores de Base de Datos SQ,
    Groupware, Objetos y la WEB.
   El lado del servidor depende del SO para
    conectarse con el bloque del Middleware.
Bloque Middleware
   Ejecuta en los lados del cliente y servidor de la
    Aplicación.
   Categorías:
       Pilas de transporte
            NetBios, TCP/IP
       Sistemas Operativos de Red
            DSM (ORB)
            NOS (RPC, Seguridad)
       Middleware de servicio específico
            ODBC, Correo, HTTP
   Es el sistema nervioso de la infraestructura
    cliente/servidor
MODELO DE APLICACIONES




                         25
MODELO DOS CAPAS
   Definición
      La lógica de la aplicación esta dentro de la interfaz de

       usuario (cliente) o dentro de la base de datos
       (servidor) o en los dos lugares
          Los servidores de base de datos con procedimientos

           almacenados son ejemplos de sistemas
           cliente/servidor de dos capas.




                                                             26
MODELO TRES CAPAS
   Antecedentes
      Se empleo para describir la división física de

       una aplicación entre computadoras personales
       (primera capa), servidores departamentales
       (segundo capa) y base de datos empresarial
       (tercera capa).




                                                    27
MODELO TRES CAPAS
   Definición
      La lógica de la aplicación (proceso) reside en la capa

       intermedia y esta separada de la información (base de
       datos) y de la interfaz de usuario.
          Los servidores WEB son ejemplos de sistemas

           cliente/servidor de tres capas.
   Esquema
      Primera Capa:      Cliente
      Segunda Capa:      Servidor de Aplicaciones
      Tercera Capa:      Base de Datos




                                                                28
COMPARACION ENTRE MODELOS DE DOS Y
TRES CAPAS
   Administración del Sistema
      Dos Capas: Compleja (más reglas en el cliente por administrar)
      Tres Capas: Menos Compleja (la aplicación puede administrarse de manera
       central en el servidor)
   Seguridad
      Dos Capas: Baja (en el nivel de la información)
      Tres Capas: Alta (muy afinada en el nivel de servicio)
   Encapsulado de la Información
      Dos Capas: Bajo (las tablas datos están expuestos)
      Tres Capas: Alta (cliente llama a servicios o métodos)




                                                                             29
COMPARACION ENTRE MODELOS DE DOS Y TRES
CAPAS
   Desempeño
      Dos Capas: Pobre (se envían muchas instrucciones SQL por la red )
      Tres Capas: Alta (se envían solicitudes de servicios cliente-servidor)
   Escalabilidad
      Dos Capas: Pobre (administración limitada de ligas de
       comunicaciones con el cliente)
      Tres Capas: Excelente (distribuir la carga entre varios servidores)
   Reciclado de Aplicaciones
      Dos Capas: Pobre (aplicaciones monolíticas en el cliente)
      Tres Capas: Excelente (puede reciclar servicios y objetos)




                                                                           30
COMPARACION ENTRE MODELOS DE DOS Y TRES
CAPAS

   Facilidad de Desarrollo
      Dos Capas: Alta

      Tres Capas: En mejoras (están surgiendo nuevas

       herramientas para desarrollar los servidores de aplicaciones)
   Soporte de Base de Datos Heterogéneo
      Dos Capas: No

      Tres Capas: Si (utilizan varias bases de datos dentro de la

       misma transacción de negocios)




                                                                  31
COMPARACION ENTRE MODELOS DE DOS Y TRES
CAPAS
   Flexibilidad de Arquitectura de Hardware
      Dos Capas: Limitada (Se tiene un solo cliente y un solo servidor)
      Tres Capas: Excelente (Las tres capas se pueden residir en
       computadoras distintas, o la segunda y la tercera pueden
       encontrarse en la misma máquina en entornos basados en
       componentes)
   Disponibilidad
      Dos Capas: Baja
      Tres Capas: Excelente (puede volver a arrancar los componentes
       de la capa en medio entre otros servidores)




                                                                           32
COMPONENTES CUANDO LAS TRES CAPAS SON
n CAPAS
   Componente: Funciones ó tareas específicas que ayudan a
    responder una solicitud.
      Capa de intermedio (segunda capa) no un programa

       monolítico, es mas bien un conjunto de componentes.
   Cuando se convierte tres capas en n capas:
      Cuando existen uno o varios componentes combinados en la

       segunda capa, que ayudan a responder una solicitud del
       cliente.




                                                             33

Materia Cliente/Servidor

  • 1.
  • 2.
    Introducción  Es una arquitectura que en este momento es una de las más importantes y utilizadas en el ámbito de enviar y recibir información, también es una herramienta potente para almacenar datos en una base de datos como servidor 2
  • 3.
    Antecedentes  Cliente / Servidor nació por la necesidad que tienen las organizaciones, de realizar sus operaciones mas eficientemente lo cual se reduce a que el su personal sea mas productivo y reduzcan los costos y gastos de operación y mantenimiento  Al mismo que se generan productos y servicios mas rápidamente y con mejor calidad 3
  • 4.
    Características  Servicio: Cliente/Servidor es una relación entre procesos que se ejecutan en maquinas independientes.  Proceso Servidor: Proveedor de servicios  Proceso Cliente: Consumidor de servicios  Recursos Compartidos: Un servidor puede servir a varios clientes al mismo tiempo y regular su acceso a los recursos 4
  • 5.
    Características  Transparencia de Ubicación: Un servidor puede residir en la misma maquina del cliente o en otra, en la red. Cliente/Servidor oculta la ubicación del servidor. Un programa puede ser cliente, servidor, o las dos cosas.  Mezclar y Acoplar: Cliente/Servidor es independiente de plataformas de equipos o de sistemas operativos. Se puede mezclar plataformas de clientes y servidores (Windows/Linux, Linux/Windows, etc) 5
  • 6.
    Características  Escalabilidad: Cliente/Servidor pueden escalarse en forma vertical y horizontal  Escalamiento Horizontal: Que al quitar o agregar estaciones de trabajo clientes solo se produce un pequeño efecto de desempeño.  Escalamiento Vertical: Significa Migrar (Mudar) a una máquina servidor más grande y rápida, o distribuir la carga de procesamiento entre varios servidores 6
  • 7.
    Características  Encapsulado de Servicios: A través de un mensaje se le indica al servidor que servicio es solicitado, y depende de él la forma en que satisface tal solicitud. Los servidores pueden actualizarse sin afectar a los clientes.  Integridad: Código y la información se administra de manera central, lo que da como resultado un mantenimiento más barato y resguardo de información compartida, al mismo tiempo los clientes permanecen independientes 7
  • 8.
  • 9.
    Servidores de Archivos  Solicitud de registros de archivo  Servicio de información muy primitivo  Muchos mensajes para obtener información  Útiles para compartir archivos a lo largo de red.  Son responsables para crear repositorios compartidos (documentos, imágenes, planos de ingeniaría y otros objetos de datos grandes de la red) 9
  • 10.
    Servidores de Basede Datos  Cliente pasa como mensajes solicitudes escritas en SQL (lenguaje de consulta estructurado).  Servidor emplea su propio poder de procesamiento para encontrar los datos pedidos, en ves de entregar toda la información.  Proveen información para la toma de decisiones a través de reportes y consultas  Tienen una función vital en el almacenamiento masivo de información 10
  • 11.
    Servidores de Transacciones  Cliente llama por medio de un motor de base de datos de SQL a procedimientos remotos que residen en el servidor  Procedimientos remotos (almacenados): conjunto de instrucciones SQL.  Intercambio de la red consiste en un solo mensaje de solicitud una respuesta.  Instrucciones SQL tienen éxito o fracasan como unidad  Transacciones: Son instrucciones SQL agrupadas 11
  • 12.
    Servidores GroupWare  Se encarga de la administración de información como texto, imágenes, correo electrónico, tablero y boletines electrónicos. 12
  • 13.
    Servidores de Aplicacionesde Objetos  Está escrito como un conjunto de objetos de comunicación.  Los objetos clientes se comunican con objetos del servidor mediante un intermediario de solicitud de objetos (ORB object request broker).  El cliente invoca un método sobre un objeto remoto del servidor, el ORB localiza una instancia de esa clase de objeto en el servidor, llama al método invocado y entrega el resultado al objeto al cliente 13
  • 14.
    Servidores de Aplicacionesde Objetos  Los servidores de objetos deben dar soporte para que exista concurrencia (solicitudes simultaneas) y comunicación.  Un ejemplo de Servidor de Aplicaciones de Objetos son los servidores de aplicaciones JAVA (CORBA).  Microsoft tiene su propio ORB llamado modelo de objetos de componentes distribuidos (DCOM, distributed component object model). Un modelo de componentes es el ActiveX. 14
  • 15.
    Servidores de AplicacionesWEB  Los servidores WEB entregan documentos (Paginas WEB) a los clientes cuando estos los piden.  Clientes y servidores se ponen en contacto a través de un protocolo denominado HTTP (protocolo de transferencia de).  HTTP: Protocolo que define un conjunto simple de comandos.  Servidores Web de Objetos: Un comienzo en servidores de WEB de objetos son los Applets de JAVA, son muy parecidos a los servidores de aplicaciones de objetos. 15
  • 16.
    BLOQUES DE LATECNOLOGÍA CLIENTE SERVIDOR
  • 17.
    Bloques Básicos  Cliente  Diagonal (Middleware)  Servidor
  • 18.
    Bloques en CuatroSituaciones  Cliente/Servidor para tiendas pequeñas y tribus nómadas  El cliente, el middleware y casi todos los servicios empresariales, se ejecutan en la misma máquina (negocios pequeños, oficinas caseras)
  • 19.
    Bloques en CuatroSituaciones  Cliente/Servidor para tiendas pequeñas y Departamentos  Implementación clásica de un tipo cliente y un solo servidor en redes (Tiendas pequeñas, departamentos)  Cliente/Servidor para empresas intergalácticas  Implementación multiservidor.  Servidores presentan ante el cliente la imagen de un solo sistema.
  • 20.
    Bloques en CuatroSituaciones  Cliente/Servidor para empresas intergalácticas  Implementación multiservidor.  Servidores presentan ante el cliente la imagen de un solo sistema.
  • 21.
    Bloques en CuatroSituaciones  Cliente/Servidor para el mundo posterior a la escasez  Costos de equipos sean costeables  Toda máquina será al mismo tiempo cliente y servidor totalmente funcionales.
  • 22.
    Bloque Cliente  Corre sobre un sistema operativo que proporciona una interfaz gráfica de usuario (GUI).  El Sistema Operativo pasa la responsabilidad al Middleware permitiéndole manejar los servicios que no sean locales.  Ejecuta el componente DSM (Distributed system management), que puede ser una computadora personal hasta un programa de interfaz de la Aplicacioón
  • 23.
    Bloque Servidor  Ejecuta el lado servidor de la Aplicación.  Servidores de Base de Datos SQ, Groupware, Objetos y la WEB.  El lado del servidor depende del SO para conectarse con el bloque del Middleware.
  • 24.
    Bloque Middleware  Ejecuta en los lados del cliente y servidor de la Aplicación.  Categorías:  Pilas de transporte  NetBios, TCP/IP  Sistemas Operativos de Red  DSM (ORB)  NOS (RPC, Seguridad)  Middleware de servicio específico  ODBC, Correo, HTTP  Es el sistema nervioso de la infraestructura cliente/servidor
  • 25.
  • 26.
    MODELO DOS CAPAS  Definición  La lógica de la aplicación esta dentro de la interfaz de usuario (cliente) o dentro de la base de datos (servidor) o en los dos lugares  Los servidores de base de datos con procedimientos almacenados son ejemplos de sistemas cliente/servidor de dos capas. 26
  • 27.
    MODELO TRES CAPAS  Antecedentes  Se empleo para describir la división física de una aplicación entre computadoras personales (primera capa), servidores departamentales (segundo capa) y base de datos empresarial (tercera capa). 27
  • 28.
    MODELO TRES CAPAS  Definición  La lógica de la aplicación (proceso) reside en la capa intermedia y esta separada de la información (base de datos) y de la interfaz de usuario.  Los servidores WEB son ejemplos de sistemas cliente/servidor de tres capas.  Esquema  Primera Capa: Cliente  Segunda Capa: Servidor de Aplicaciones  Tercera Capa: Base de Datos 28
  • 29.
    COMPARACION ENTRE MODELOSDE DOS Y TRES CAPAS  Administración del Sistema  Dos Capas: Compleja (más reglas en el cliente por administrar)  Tres Capas: Menos Compleja (la aplicación puede administrarse de manera central en el servidor)  Seguridad  Dos Capas: Baja (en el nivel de la información)  Tres Capas: Alta (muy afinada en el nivel de servicio)  Encapsulado de la Información  Dos Capas: Bajo (las tablas datos están expuestos)  Tres Capas: Alta (cliente llama a servicios o métodos) 29
  • 30.
    COMPARACION ENTRE MODELOSDE DOS Y TRES CAPAS  Desempeño  Dos Capas: Pobre (se envían muchas instrucciones SQL por la red )  Tres Capas: Alta (se envían solicitudes de servicios cliente-servidor)  Escalabilidad  Dos Capas: Pobre (administración limitada de ligas de comunicaciones con el cliente)  Tres Capas: Excelente (distribuir la carga entre varios servidores)  Reciclado de Aplicaciones  Dos Capas: Pobre (aplicaciones monolíticas en el cliente)  Tres Capas: Excelente (puede reciclar servicios y objetos) 30
  • 31.
    COMPARACION ENTRE MODELOSDE DOS Y TRES CAPAS  Facilidad de Desarrollo  Dos Capas: Alta  Tres Capas: En mejoras (están surgiendo nuevas herramientas para desarrollar los servidores de aplicaciones)  Soporte de Base de Datos Heterogéneo  Dos Capas: No  Tres Capas: Si (utilizan varias bases de datos dentro de la misma transacción de negocios) 31
  • 32.
    COMPARACION ENTRE MODELOSDE DOS Y TRES CAPAS  Flexibilidad de Arquitectura de Hardware  Dos Capas: Limitada (Se tiene un solo cliente y un solo servidor)  Tres Capas: Excelente (Las tres capas se pueden residir en computadoras distintas, o la segunda y la tercera pueden encontrarse en la misma máquina en entornos basados en componentes)  Disponibilidad  Dos Capas: Baja  Tres Capas: Excelente (puede volver a arrancar los componentes de la capa en medio entre otros servidores) 32
  • 33.
    COMPONENTES CUANDO LASTRES CAPAS SON n CAPAS  Componente: Funciones ó tareas específicas que ayudan a responder una solicitud.  Capa de intermedio (segunda capa) no un programa monolítico, es mas bien un conjunto de componentes.  Cuando se convierte tres capas en n capas:  Cuando existen uno o varios componentes combinados en la segunda capa, que ayudan a responder una solicitud del cliente. 33