La arquitectura cliente-servidor divide las aplicaciones entre clientes, que solicitan servicios, y servidores, que proporcionan servicios de forma constante. Los clientes generan solicitudes y los servidores envían información y respuestas a múltiples clientes simultáneamente. Esta arquitectura surgió para unir mainframes y terminales en la década de 1970 y evolucionó para combinar el poder de mainframes y PCs, así como servicios web distribuidos.