Modelo Cliente-Servidor

Modelo Cliente-Servidor

Introducción:
En la red hay mucho intercambio de datos entre los usuarios y el servidor de la aplicación, pero hay una manera ya identificada del intercambio y que con el tiempo se á modificado la manera en que se comunica el cliente y el servidor. Así que es necesario aprender en cómo es la conectividad entre estos.

Desarrollo:
El modelo cliente-servidor consiste básicamente en un cliente que realiza peticiones a otro programa (el servidor) que le da respuesta.
La tecnología denominada Cliente -Servidor es utilizada por todas las aplicaciones de Internet ó Intranet. Un cliente funciona en su ordenador local, se comunica con el servidor remoto, y pide a éste información. El servidor envía la información solicitada.
Características:
  • Espera y recibe las respuestas del servidor.
  • Por lo general, puede conectarse a varios servidores a la vez.
  • Normalmente interactúa directamente con los usuarios finales mediante una interfaz gráfica de usuario

En el modelo cliente-servidor lo que lleva acabo cada parte de este es:

Cliente.

El cliente es el proceso que permite al usuario formular los requerimientos y pasarlos al servidor, se le conoce con el término front-end.
Normalmente maneja todas las funciones relacionadas con la manipulación y despliegue de datos, por lo que están desarrollados sobre plataformas que permiten construir interfaces gráficas de usuario (GUI), además de acceder a los servicios distribuidos en cualquier parte de una red.
Las funciones que lleva a cabo el proceso cliente se resumen en los siguientes
puntos:
  • Administrar la interfaz de usuario.
  • Interactuar con el usuario.
  • Procesar la lógica de la aplicación y hacer validaciones locales.
  • Generar requerimientos de bases de datos.
  • Recibir resultados del servidor.
  • Formatear resultados.

Servidor.

Es el proceso encargado de atender a múltiples clientes que hacen peticiones de algún recurso administrado por él. Al proceso servidor se le conoce con el término back-end. El servidor normalmente maneja todas las funciones relacionadas con la mayoría de las reglas del negocio y los recursos de datos.

Las funciones que lleva a cabo el proceso servidor se resumen en los siguientes puntos:

  • Aceptar los requerimientos de bases de datos que hacen los clientes.
  • Procesar requerimientos de bases de datos.
  • Formatear datos para trasmitirlos a los clientes.
  • Procesar la lógica de la aplicación y realizar validaciones a nivel de bases de datos.

Niveles Arquitectura modelo cliente-servidor:

La arquitectura de tres niveles también conocida como arquitectura multinivel. Surgió para remedir las limitaciones de las arquitecturas de 2 niveles. En esta arquitectura se añadió un nivel intermedio entre el ambiente de sistema de interfaz del usuario y el ambiente de administración de base de datos del servidor.
En la arquitectura en 3 niveles, existe un nivel intermediario. Esto significa que la arquitectura generalmente está compartida por:

  • Un cliente, es decir, el equipo que solicita los recursos, equipado con una interfaz de usuario (generalmente un navegador Web) para la presentación.
  • El servidor de aplicaciones (también denominado software intermedio), cuya tarea es proporcionar los recursos solicitados, pero que requiere de otro servidor para hacerlo.
  • El servidor de datos, que proporciona al servidor de aplicaciones los datos que requiere.



Ventajas:
  • Uno de los aspectos que más ha promovido el uso de sistemas Cliente/Servidor, es la existencia de plataformas de hardware cada vez más baratas.
  • Una ventaja adicional del uso del esquema Cliente/Servidor es que es más rápido el mantenimiento y el desarrollo de aplicaciones, pues se pueden emplear las herramientas existentes (por ejemplo, los servidores de SQL o las herramientas de más bajo nivel como los sockets o el RPC).
  • La estructura inherentemente modular facilita además la integración de nuevas tecnologías y el crecimiento de la infraestructura computacional, favoreciendo así la escalabilidad de las soluciones.
  • El esquema Cliente/Servidor contribuye, además, a proporcionar, a los diferentes departamentos de una organización, soluciones locales, pero permitiendo la integración de la información relevante a nivel global.


Desventajas:
  • El mantenimiento de los sistemas es más difícil pues implica la interacción de diferentes partes de hardware y de software, distribuidas por distintos proveedores, lo cual dificulta el diagnóstico de fallas.
  • Se cuenta con muy escasas herramientas para la administración y ajuste del desempeño de los sistemas.
  • Es importante que los clientes y los servidores utilicen el mismo mecanismo (por ejemplo, sockets o RPC), lo cual implica que se deben tener mecanismos generales que existan en diferentes plataformas.
  • Además, hay que tener estrategias para el manejo de errores y para mantener la consistencia de los datos.
  • La seguridad de un esquema Cliente/Servidor es otra preocupación importante. Por ejemplo, se deben hacer verificaciones en el cliente y en el servidor.
  • El desempeño es otro de los aspectos que se deben tener en cuenta en el esquema Cliente/Servidor. Problemas de este estilo pueden presentarse por congestión en la red, dificultad de tráfico de datos, etc.

Conclusión:
Después de conocer cómo interactúa el cliente como el servidor, como es que se dé el intercambio de datos, podemos concluir que el cliente cuando realiza una petición al servidor se tiene que cumplir algunos requerimientos para que el proceso se lleve a cabo bien y regularmente.
Se ve que dentro de la arquitectura el tráfico de datos es más fácil de manejar y que las ventajas de tener el de tres niveles son mejores que el de dos niveles.

Referencias:

Lupitha M. (2014) Cliente Servidor de 3 niveles
Recuperado el 19/08/2017, de
https://es.slideshare.net/guadalupemendozaferia/cliente-servidor-de-3-niveles
Bertha Mariel M. y José Manuel Z. (2004) Capítulo 5. Cliente-Servidor
Recuperado el 19/08/2017, de
http://catarina.udlap.mx/u_dl_a/tales/documentos/lis/marquez_a_bm/capitulo5.pdf
José Roberto D. (2011) Diferentes Características De La Arquitectura Cliente-Servidor.
Recuperado el 19/08/2017, de
http://juanitocuirindichapio.blogspot.mx/2011/09/diferentes-caracteristicas-de-la_09.html
Ana (2011) Modelo Cliente Servidor
Recuperado el 19/08/2017, de
http://anagaldo.blogspot.mx/2011/05/modelo-cliente-servidor.html


Comentarios