Definição
Arquitetura cliente-servidor ou modelo cliente-servidor é uma arquitetura na qual o processamento da informação é dividido em módulos ou processos distintos. Existe um processo que é responsável pela manutenção da informação (servidores) e outro responsável pela obtenção dos dados (os clientes).
Papéis
Cliente
Solicitam um determinado serviço, através do envio de uma mensagem ao servidor. Enquanto o processo servidor está trabalhando a solicitação, o cliente está livre para realizar outras tarefas.
Servidor
Oferecem serviços a processos usuários, ou seja, executam a tarefa solicitada e enviam uma resposta ao cliente que se traduz nos dados solicitados.
Vantagens x Desvantagens
Vantagens
- Recursos centralizados
- Maior facilidade de manutenção
Desvantagens
- Sobrecarga
- Único nó
Exemplo de Arquitetura cliente-servidor
Comunicação entre o browser e um site que possui um servidor para processamentos de banco de dados ou outros relacionados.