Processamento distribuido - Como começar?

Olá pessoal

Estou aqui pois tenho algumas duvidas

Estou aprendendo sobre Java porém estou interessado em sistemas distribuídos…mais especificamente em Processamento Distribuído. Alguém pode me indicar algum matérial para começar o aprendizado?

Outra coisa…falei com pessoas mais entendidas e me aconselharam a procurar algo pronto para usar como referencia. Existem algoritmos de fácil implementação para tarefa mais complexas como divisão da carga em pacotes, balanceamento e coisas do tipo?

Estou pensando em montar um projeto de processamento distribuído utilizando capacidade ociosa de estações de trabalho comuns em uma rede corporativa…talvez até seja meu tema de TG, porém antes gostaria de saber a viabilidade…será que um mero estudante (e não dos melhores) consegue tornar isso viável?

Desde já muito obrigado a quem responder

estude EJB onde vc tera objetos distribuidos, RMI e Webservices são coisas que se podem utilizar para processamento distribuido… tambem tem um projeto do jakarta que distribui as requesições entre conteiners diferentes mas não to lembrando o nome…

EJB não é nem de longe o que você está procurando. Pesquise grid computing e você vai achar projetos open source como o Ibis e o GridGain. Você pode usá-los como base para o seu projeto ou ler o código para se inteirar das técnicas usadas. Só não esqueça de verificar as licenças usadas e se for o caso libere seu código com uma licença compatível.

Um bom livro em portugues sobre o assunto eh esse: Computação Distribuída de Alto Desempenho - Redes, Clusters e Grids Computacionais. O autor foi meu orientador na faculdade e o trabalho tratava justamente sobre escalonamento em grids para uso de capacidade ociosa.

Aconselho a estudar sobre o assunto e focar em apenas um aspecto de sistema distribuído: balanceamento de carga, escalonamento, particionamento de problema, comunicação e por aí vai. Tem muita coisa sobre o assunto e apenas na graduação você dificilmente vai conseguir dominar tudo.

Obrigado pelas dicas…

estarei dando uma olhada nesses projetos.
Sanches esse livro tem uma linguagem acessível?

Sou suspeito para falar porque eu estava tendo aula com o cara que escreveu. Também vai depender dos seus conhecimentos atuais sobre comunicação de dados e arquitetura de computadores. Ou seja, eu daria uma folheada nele antes de comprar :stuck_out_tongue:

Dificil vai ser achar em uma livraria real…mas não custa procurar :smiley:

Outra duvida rápida…consigo fazer um teste para avaliar a performance de alguns aplicativos em ambientes distribuídos usando maquinas virtuais?