JGroups Grupo de Comunicação
Projeto de pesquisa: JGroups Grupo de Comunicação. Pesquise 862.000+ trabalhos acadêmicosPor: Franciluma • 15/1/2015 • Projeto de pesquisa • 570 Palavras (3 Páginas) • 381 Visualizações
JGroups
Grupo de comunicação que utiliza os termos grupo e membros. Os membros são parte de um grupo. Um membro é um nó e um grupo é um cluster. Cluster e grupos são usados como sinônimos.
Um nó é um processo, que reside em algum host. Um agrupamento pode ter um ou mais nós que lhe pertence. Pode haver vários nós no mesmo host e todos podem ou não fazer parte do mesmo cluster. Os nós podem ser executados em deferentes hosts.
O Jgroups é um conjunto de ferramentas para comunicação de grupo confiável. Os processos podem participar de um grupo, enviar mensagens a todos os membros do grupo ou a membros individuais e receber mensagens de membros do grupo. O controle dos membros é mantido pelo sistema, em cada grupo. O sistema notifica aos membros do grupo quando um novo membro se junta, ou um membro existente sai ou falhas. A identificação de um grupo é seu nome. Um membro pode fazer parte de vários grupos. Os processos de um grupo podem estar localizados na mesma maquina ou em maquinas deferentes dentro da mesma rede ou em uma WAN.
Envio e recebimento de mensagens
Um canal está ligado a uma pilha de protocolo. Quando um a aplicativo envia uma mensagem, o canal a envia para a pilha de protocolo, que é encaminhada para o protocolo de nível superior onde será processada e encaminhada para os protocolos abaixo. E assim a mensagem é repassada de protocolo a protocolo até chegar ao protocolo inferior (transporte) que a coloca na rede. O mesmo acontece no sentido contrario: o protocolo de transporte escuta as mensagens na rede. Envia a mensagem par o protocolo a cima até chegar ao superior. O canal então chama o callback receive() no aplicativo para entregar a mensagem.
A pilha de protocolo é iniciada quando um dispositivo se conecta ao canal e interrompida quando ele se desconecta. Quando o canal fecha, a pilha de protocolo é destruída liberando seus recursos.
Conexão e desconexão de cliente
Para participar de um grupo e enviar mensagens, um processo tem de criar um canal e se conectar a ele usando o nome do grupo (todos os canais com o mesmo nome formar um grupo). O cliente sai de um grupo com a desconexão do canal. O canal pode ser reutilizado: os clientes podem se conectar a ele novamente depois de ter desligado.
Cada canal tem um endereço único. Canais sempre sabe quem são os outros membros que estão no mesmo grupo: uma lista de endereços de membros pode ser recuperada a partir de qualquer canal. Esta lista é chamada de ponto de vista. Um processo pode selecionar um endereço a partir desta lista e enviar uma mensagem unicast a ela (também para si mesmo), ou pode enviar uma mensagem multicast para todos os membros da visão atual (também incluindo o próprio).
Sempre que um processo de ingresso ou saída de um grupo, ou quando um processo que caiu foi detectado, uma nova visão é enviada para todos os membros restantes do grupo. Quando um processo de membro é suspeito de ter deixado de funcionar, uma mensagem de suspeita é recebida por todos os membros não defeituosos. Assim, os canais recebem mensagens regulares e visualizam notificações suspeitas.
As propriedades de um canal normalmente são definidas em um arquivo XML, mas o JGroups também permite a configuração por
...