top of page

Introducción a la arquitectura de un sistema cliente/servidor

Diversas aplicaciones se ejecutan en un entorno cliente/servidor. Esto significa que los equipos clientes (equipos que forman parte de una red) contactan a un servidor, un equipo generalmente muy potente en materia de capacidad de entrada/salida, que proporciona servicios a los equipos clientes. Estos servicios son programas que proporcionan datos como la hora, archivos, una conexión, etc.

Los servicios son utilizados por programas denominados programas clientes que se ejecutan en equipos clientes. Por eso se utiliza el término "cliente" (cliente FTP, cliente de correo electrónico, etc.) cuando un programa que se ha diseñado para ejecutarse en un equipo cliente, capaz de procesar los datos recibidos de un servidor (en el caso del cliente FTP se trata de archivos, mientras que para el cliente de correo electrónico se trata de correo electrónico).

Ventajas de la arquitectura cliente/servidor

El modelo cliente/servidor se recomienda, en particular, para redes que requieran un alto grado de fiabilidad. Las principales ventajas son:

 

 

 

 

  • recursos centralizados: debido a que el servidor es el centro de la red, puede administrar los recursos que son comunes a todos los usuarios, por ejemplo: una base de datos centralizada se utilizaría para evitar problemas provocados por datos contradictorios y redundantes.

  • seguridad mejorada: ya que la cantidad de puntos de entrada que permite el acceso a los datos no es importante.

  • administración al nivel del servidor: ya que los clientes no juegan un papel importante en este modelo, requieren menos administración.

  • red escalable: gracias a esta arquitectura, es posible quitar o agregar clientes sin afectar el

 

 

 

 

 

  • funcionamiento de la red y sin la necesidad de realizar mayores modificaciones.

Desventajas del modelo cliente/servidor

La arquitectura cliente/servidor también tiene las siguientes desventajas:

  • costo elevado: debido a la complejidad técnica del servidor.

  • un eslabón débil: el servidor es el único eslabón débil en la red de cliente/servidor, debido a que toda la red está construida en torno a él. Afortunadamente, el servidor es altamente tolerante a los fallos (principalmente gracias al sistema RAID).

 

 

 

Funcionamiento del sistema cliente/servidor:

Un sistema cliente/servidor funciona tal como se detalla en el siguiente diagrama:

 

  • El cliente envía una solicitud al servidor mediante su dirección IP y el puerto, que está reservado para un servicio en particular que se ejecuta en el servidor.

  • El servidor recibe la solicitud y responde con la dirección IP del equipo cliente y su puerto.Utilidades de una aplicación cliente/servidor Entre las principales utilidades que le podemos asignar a las aplicaciones cliente/servidor destacan las siguientes:

  • Ligereza impresionante, ya que toda la carga y consumo de recursos se hace directamente en el servidor.

  • Facilidad de mantenimiento, ya que se hace mantenimiento general en el código principal en el servidor.

  • Posibilidad de realizar trabajos dinámicos y en grupo.

  • Servicio de trabajo incluso en zonas remotas, gracias a Internet.

  • Posibilidad de ser desarrolladas en diversos lenguajes de programación.

  • Capacidad de trabajar, por lo general, en diferentes plataformas de manera simultánea.

  • Evolución

    Computadora central

    Desde sus inicios el modelo de administración de datos a través de computadoras se basaba en el uso de terminales remotas, que se conectaban de manera directa a una computadora central. Dicha computadora central se encargaba de prestar servicios caracterizados por que cada servicio se prestaba solo a un grupo exclusivo de usuarios.

 

 

 

 

 

  • Programa o proceso que es responsable de aceptar nuevas peticiones: Maestro o Padre.

  • Programas o procesos que deben manejar las peticiones individuales: Esclavos o Hijos.

  • Tareas del programa maestro

  • Abrir un puerto local bien conocido al cual pueda acceder los clientes.

  • Esperar las peticiones de los clientes.

  • Elegir un puerto local para las peticiones que llegan en informar al cliente del nuevo puerto, (innecesario en la mayoría de los casos).

  • Iniciar un programa esclavo o proceso hijo que atienda la petición en el puerto local, (el esclavo cuando termina de manejar una petición no se queda esperando por otras).

  • Volver a la espera de peticiones mientras los esclavos, en forma concurrente, se ocupan de las anteriores peticiones.

© 2023 by Graphic Design Porfolio. Proudly created with Wix.com

bottom of page