Se refiere por lo tanto a un modelo de comunicación
que vincula a varios dispositivos informáticos a través
de una red. El cliente, en este marco, realiza peticiones
de servicios al servidor, que se encarga de satisfacer
dichos requerimientos.
Ventajas
Este tipo de modelos
permite repartir de la
capacidad de
procesamiento.
El servidor puede
ejecutarse sobre
más de un equipo y
ser más de un
programa.
De acuerdo a los
servicios que brinda,
se lo puede llamar
servidor web, servidor
de correo o de otro
modo.
Aplicación
Gran parte de los servicios de Internet obedecen a la
arquitectura cliente servidor. El servidor web pone a
disposición del cliente los sitios web, a los cuales el
cliente accede a través de su navegador. El servidor, de
esta manera, aloja los datos que el cliente solicita
mediante el navegador instalado en su computadora.
Ejemplos
Correo Electrónico
Protección de Usuarios Y contraseñas
Acceso Remoto
Almacenamiento de Información
Arquitectura
Ejemplo
Desventajas
Actualizaciones (clientes): Una de las
complicaciones es gestionar las
actualizaciones en los clientes, pues
puede haber muchos terminales con
el cliente instalado y tenemos que
asegurar que todas sean actualizadas
cuando salga una nueva versión.
Concurrencia: Una cantidad no esperada de
usuarios concurrentes puede ser un problema
para el servidor, quien tendrá que atender
todas las peticiones de forma simultánea,
aunque se puede mitigar con una estrategia
de escalamiento, siempre será un problema
que tendremos que tener presente.
Todo o nada: Si el servidor se cae, todos los
clientes quedarán totalmente inoperables.
Protocolos de bajo nivel: Los protocolos más
utilizados para establecer comunicación entre el
cliente y el servidor suelen ser de bajo nivel, como
Sockets, HTTP, RPC, etc. Lo que puede implicar un
reto para los desarrolladores. Depuración: Es difícil
analizar un error, pues los clientes están distribuidos
en diferentes máquinas, incluso, equipos a los cuales
no tenemos acc