Ola pessoal!
qual a real finalidade de um socket em uma aplicação cliente/servidor?
quais são seus beneficios?
é muito dificil implementar?
Ola pessoal!
qual a real finalidade de um socket em uma aplicação cliente/servidor?
quais são seus beneficios?
é muito dificil implementar?
Aproveitando o tópico,
Pessoal é realmente necessário numa rede corporativa a implementação de sockets em uma aplicação cliente\servidor ou simplesmente indicar o IP do banco e fazer a conexão?
até +.
Existe um excelente tutorial aqui no GUJ:
http://www.guj.com.br/java.tutorial.artigo.126.1.guj
Atualmente as empresas preferem usar web services, algo padronizado que consegue ser lido independente de linguagem, como os socktes, mas com certas vantagens.
o tutotial é muito bom!
mas não responde as minhas perguntas! 
preciso de informações concretas!
poderiam me ajudar?
Usar “sockets” é necessário apenas quando você precisa usar um protocolo que não esteja já disponível.
Em uma aplicação cliente-servidor, usualmente você conecta-se ao banco de dados via um driver JDBC, que normalmente é uma biblioteca que usa sockets internamente com um protocolo específico do banco (exemplo: protocolo TDS para o MS SQL Server ou o Sybase).
Ou então a um provedor de web services, que normalmente usa o protocolo HTTP ou HTTPS.
Se o servidor for Java muitas vezes está disponível o RMI, que é um outro protocolo.
Ou seja, só é necessário usar sockets quando o protocolo que você precisa não está disponível. Por exemplo, se você quiser conectar-se ao MSN sem usar http.
ai sim … hehheeh
em cima do pedido!
valei ai pela ajuda thingol
Normalmente usa-se sockets quando tem-se uma aplicação Desktop que precisa se comunicar com outra máquina. No caso você nao estará utilizando um browser para fazer requisições.
O RMI tbm é muito bom para comunicação em rede local.
Mas em minha opinião, uma aplicação J2EE é a melhor escolha para se trabalhar como cliente/servidor. Além de possuir muitos recursos e ferramentas auxiliares para ti desenvolver. Aplicação WEB é muito bom e rápido atualmente.
OBS: O link que o usuário pedrosa postou é bem explicativo e prático, acho que você pode dar uma olhada que irá te ajudar caso decida usar socket’s.
ja li o tutoria e ele é realmente muito bom! acontece que minhas duvidas eram um tanto abstratas com relação a real utilidade dos sockets em aplicações cliente/servidor.
obrigado!
vc clareou ainda mais meus conceitos sobre sockets… 
Tb sempre tive este tipo de dúvida e ainda nao consegui saná-la.
Penso, numa aplicação cliente/servidor onde apenas uma máquina tenha acesso ao banco de dados ( a máquina servidora ) e os clientes fazem as solicitações para esta máquina, que então consulta o banco e devolve os resultados.
Acredito que com Sockets ou RMI seja possível, afinal esta é a lógica deste tipo de implementação, porém td que tenho lido a respeito me faz pensar que tanto Socket quanto RMI tornam o desenvolvimento muito complexo.
Acredito que deva existir alguma forma menos complexa de se fazer o mesmo.
Alguém poderia me indicar como ?
Olá
Com sockets pode usar o Grizzly, o Mina ou mesmo XSockets para escrever o lado servidor. Na verdade você nem precisa mexer diretamente com sockets pois os servidores escritos usando estas coisas se encarregam de sujar a mão de graxa com as tarefas de baixo nível. Outra alternativa bem mais fácil seria escrever um servlet e hospedar em um tomcat da vida.
Nesta arquitetura o protocolo usado deve ser HTTP. O Cliente deve ser escrito usando HttpClient e UrlConnection que também usam sockets por debaixo os panos. Outra alternativa seria usar o Apache-XML-RPC se bem que coisas com ranço de RPC tem alguns inconvenientes (RMI é RPC).
Resumindo: você não precisará usar diretamente sockets tanto no lado cliente como no servidor.
[]s
Luca
Luca, obrigado pela resposta. Está começando ficar mais claro.
Poderia me indicar algum material á respeito ?
É apenar para pegar o jeito da coisa.
Obrigado,
Gustavo
Olá
Poderia me indicar algum material á respeito ?
É apenar para pegar o jeito da coisa.
Comece trocando mensagens entre uma aplicação Swing e um servlet usando UrlConnection
A seguir use o HttpClient para facilitar o uso do UrlConnection. Procure por exemplos de REST usando HttpClient
Depois experimente o Apache XML-RPC só para ver como é fácil trocar mensagens em xml
[]s
Luca