Comparação entre sockets e RMI

5 respostas
Robson_j_s_Diniz

Pessoal, estou para fazer uma comparação entre sockets e RMI, preciso comparar a velocidade e desempenho na transferencia de arquivos. Tanto o socket como RMI são servidores de arquivos que expoem uma lista de arquivos para o cliente baixar, bem queria saber como posso fazer esse tipo de comparação, alguem poderia me ajudar?

5 Respostas

T

Q? Nem socket nem RMI são Servidores de arquivos… São meios de se fazer comunicação entre duas ou mais máquinas em rede, digamos assim. Socket é sempre mais rápido

Robson_j_s_Diniz

Ok, talvez eu tenha me expressão errado, as duas aplicacões serão para disponibilizar arquivos, então uma vai ter o lado servidor e a outra o lado cliente. Então agradeço pela resposta.

moacirjava

Talvez vc esteja generalizando a função de cada um.
Os Sockets estabelecem uma comunicação TCP para troca de informações, sejam elas quais forem, entre duas ou mais máqunas.
Já o RMI permite chamar métodos que executem em outra JVM existente na rede.
Sua aplicação pode ser feita com qualquer um, mas se fosse eu, faria com Datagram ou Socket.

Robson_j_s_Diniz

Ok Moacir, agradeço por sua resposta, mas a questão não é nem ter que escolher entre socket ou RMI, o fato é que tenho que utilizar ambas e compará-las. O que não consigo, é ver uma forma de como fazer essa comparação.

Marcelo_FS
  1. Cria a aplicação utilizando sockets
  2. Cria a aplicação utilizando Java RMI
  3. Cria testes unitários e vê qual é mais rápida.

Não há como dizer se um é mais rápido que o outro, pois isso tudo depende de sua implementação. De uma forma geral, sockets tendem a ser mais rápidos pois não possuem todo o overhead do RMI… mas te darão muito mais trabalho para implementar e, se você não implementar direito, podem ficar lentos. Já no RMI tudo está pronto para você utilizar, é só você chamar o método… claro que isso é mais “pesado”, mas no fundo também é baseada em sockets.

Criado 2 de dezembro de 2008
Ultima resposta 5 de dez. de 2008
Respostas 5
Participantes 4