Modelo cliente-servidor
O modelo cliente-servidor descreve como um servidor fornece recursos e serviços a um ou mais clientes. Exemplos de servidores incluem servidores Web, servidores de e-mail e servidores de arquivos. Cada um desses servidores fornece recursos a dispositivos clientes, como computadores de mesa, laptops, tablets e smartphones. A maioria dos servidores tem uma relação de um para muitos com os clientes, o que significa que um único servidor pode fornecer recursos a vários clientes ao mesmo tempo.
Quando um cliente solicita uma conexão com um servidor, o servidor pode aceitar ou rejeitar a conexão. Se a conexão for aceita, o servidor estabelece e mantém uma conexão com o cliente usando um protocolo específico. Por exemplo, um cliente de e-mail pode solicitar uma conexão SMTP com um servidor de e-mail para enviar uma mensagem. O aplicativo SMTP no servidor de e-mail então solicitará autenticação do cliente, como o endereço de e-mail e a senha. Se essas credenciais corresponderem a uma conta no servidor de e-mail, o servidor enviará o e-mail ao destinatário pretendido.
Os jogos multijogador online também usam o modelo cliente-servidor. Um exemplo é o serviço Battle.net da Blizzard, que hospeda jogos online como World of Warcraft, StarCraft, Overwatch e outros. Quando os jogadores abrem um aplicativo da Blizzard, o cliente do jogo se conecta automaticamente a um servidor Battle.net. Depois que os jogadores entram no Battle.net, eles podem ver quem mais está online, conversar com outros jogadores e disputar partidas com ou contra outros jogadores.
Embora os servidores da Internet normalmente forneçam conexões para vários clientes ao mesmo tempo, cada máquina física só consegue lidar com uma determinada quantidade de tráfego. Por isso, serviços online populares distribuem os clientes entre vários servidores físicos usando uma técnica chamada computação distribuída. Na maioria dos casos, não importa a qual máquina específica os usuários estão conectados, pois todos os servidores fornecem o mesmo serviço.
NOTE: O modelo cliente-servidor pode ser comparado ao modelo P2P, no qual os clientes se conectam diretamente uns aos outros. Em uma conexão P2P, não é necessário um servidor central, pois cada máquina atua como cliente e servidor.
Teste seus conhecimentos