O termo cliente / servidor foi cunhado na década de 1980 para descrever um modelo de computação distribuída em que os serviços de solicitação de aplicativos cliente de processos do servidor. Cliente / servidor é essencialmente uma relação entre os processos em execução em computadores separados interligados por uma rede de computadores. O processo do servidor é o prestador de serviços, o processo cliente um consumidor, para que haja uma clara separação de função, em termos de hardware e software.
servidor de Hardware
Um computador servidor em uma rede cliente / servidor pode ser considerado tanto de hardware e software. Em termos de hardware, um computador servidor dedicado é tipicamente um computador pessoal ou estação de trabalho. Contudo, um servidor pode ser necessário para o serviço dezenas ou mesmo centenas de clientes, ao mesmo tempo, de modo que tem, tipicamente, um processador mais rápido, mais memória e espaço de armazenamento mais do que um computador cliente.
Software de servidor
Um computador servidor executa um sistema operacional especial, como o Microsoft Windows Server, Linux ou Unix, que é projetado especificamente para facilitar o compartilhamento de seus recursos. Dependendo da função operacional exata, um servidor pode permitir aos usuários compartilhar arquivos e impressoras em uma rede e fornecer acesso à Internet. Se os recursos estão em mais de um servidor, os servidores individuais podem se especializar em uma determinada tarefa - ou fornecer redundância ou duplicação de função - em caso de falha do servidor.
Cliente
Um computador cliente é tipicamente um computador pessoal regular, executando um sistema operacional como o Windows XP, Windows Vista ou Windows 7. O sistema operacional inclui o software cliente, como correio eletrônico e software de navegação na Internet, o que permite que o computador cliente para acessar e interagir com os recursos compartilhados pelo servidor. Um computador cliente só se comunica diretamente com os servidores, e não outros clientes. É, no entanto, capaz de processar a informação no seu direito próprio, um facto que o distingue do terminal burro utilizado em sistemas de computação centralizada, mainframe.
Gordo & thin Clients
Os computadores clientes pode ser descrito como "gordo" ou "fino," dependendo do local onde é realizada a lógica de execução e de negócios de uma aplicação de software. Um cliente de gordura tem a capacidade para controlar os dados. A execução é realizada, principalmente, no cliente, enquanto o servidor é responsável pelo envio de dados para o cliente e para trás de novo. Um cliente fino, por outro lado, está limitado ao que é conhecido como a camada de apresentação da aplicação de software, que aceita os dados a partir do servidor e edita-o, enquanto que a maior parte da execução é realizada no servidor.