Programação Cliente-Servidor

O paradigma de programação distribuída através da separação das aplicações entre servidores (aplicações que disponibilizam algum serviço) e clientes (aplicações que usam esses serviços) foi a arquitetura de distribuição predominante nos anos 1990. Um dos seus atrativos é o aumento da confiabilidade (a falha de uma máquina não necessariamente inviabiliza a operação do sistema como um todo) e redução de custo (máquinas mais simples podem executar os serviços isoladamente, ao invés de ter uma grande máquina fgazendo todos os serviços).

As aplicações clientes e servidoras são programas executando em máquinas distintas, trocando informação através de uma rede de computadores. Para que os serviços possam ser solicitados, a aplicação cliente deve conhecer quem fornece o serviço (o endereço da aplicação servidora) e qual o protocolo pré-estabelecido para realizar a solicitação.

Entre as vantagens citadas para o modelo de programação cliente-servidor destacam-se:

Estaremos estudando aqui como Java oferece e simplifica o suporte a esse tipo de programação através das funcionalidades do pacote java.net. A partir da apresentação de alguns conceitos preliminares, apresenta-se os fundamentos Java para criar aplicações distribuídas usando os mecanismos de TCP/IP, UDP e HTTP.