La arquitectura cliente-servidor es un modelo de aplicación distribuida donde los clientes realizan solicitudes a los servidores, que responden procesando dichas solicitudes. Este modelo permite la centralización de la gestión de información y la separación de responsabilidades, facilitando el diseño del sistema. Puede ser escalable y, en configuraciones más complejas, se pueden tener arquitecturas de n-capas que mejoran el balance de carga, aunque a costa de una mayor carga en la red.