O GoConqr está de visual novo! Conte para nós o que você achou.

Mapa mental

COMUNICAÇÃO ENTRE PROCESSOS

Guilherme Moraes Sistemas DIstribuídos Português 5,0Avaliação média 5,0 de 5 (1 avaliação)

Mapa mental sobre comunicação entre processos: sockets, serialização e cliente/servidor

Mapa mental: Comunicação entre processos

Conteúdo do mapa

COMUNICAÇÃO ENTRE PROCESSOS

  1. SOCKETS

    • SURGIDA COM O UNIX
    • ABSTRAÇÃO PARA REPRESENTAR A COMUNICAÇÃO ENTRE PROCESSOS
    • COMUNICAÇÃO ENTRE DOIS PROCESSOS: MENSAGEM DE UM SOCKET EM UM PROCESSO PARA UM SOCKET DE OUTRO
      • PROTOCOLO DE INTERNET ENVIADAS PARA UM PAR: ENDEREÇO_INTERNET; NUMERO_PORTA
        • NUMERO DE PORTAS DISPONÍVEIS: 65536
          • Para receber mensagens, um processo pode usar várias portas simultaneamente, mas não pode compartilhar uma porta com outro processo diferente no mesmo computador.
    • PROTOCOLO
      • TCP
        • Protocolo com conexão
          • ESTABELECEM CONEXÃO ANTES DE COMUNICAR ATRAVÉS DO STREAM
            • A PARTIR DESTA LIGAÇÃO PODEM SE COMUNICAR SEM TER DE INDICAR IP / PORTA
        • Comunicação por streams
        • Utilização da abstração Stream para ler/escrever dados
        • TENTA "UNIFORMIZAR" AS VELOCIDADES DOS PROCESSOS QUE LÊEM/ESCREVEM EM UM STREAM
        • MODELO DE FALHAS
          • CHECKSUM PARA DETECTAR E REJEITAR PACOTES CORROMPIDOS
          • TIMEOUTS E RETRANSMISSÃO PARA PACOTES PERDIDOS
          • NUMERO DE SEQUÊNCIA PARA DETECTAR E REJEITAR PACOTES DUPLICADOS
          • Se uma mensagem não chega porque o sistema está congestionado, ele não recebe a confirmação da recepção da mensagem até que a conexão seja cancelada após um certo tempo (timeout)
      • UDP
        • Protocolo sem conexão
        • Comunicação por “datagrams”
          • PERMITE CRIAR UM SOCKET NA MAQUINA LOCAL PARA O PROCESSO CONCORRENTE
        • COMUNICAÇÃO ATRAVÉS DOS MÉTODOS:
          • SEND
            • A operação send não é bloqueante
          • RECEIVE
            • A operação receive é bloqueante
        • FALHAS
          • OMISSÃO
            • BUFFER CHEIO
            • ERRO DE CONTEÚDO (CHECKSUM)
          • ORDENAÇÃO
            • FORA DE ORDEM
  2. SERIALIZAÇÃO

    • IMPLEMENTAÇÃO
      • RPC (REMOTE PROCEDURE CALLING)
      • RMI (REMOTE METHOD INCOCATION)
    • QUALQUER TIPO DE DADOS QUE POSSA SER PASSADO COMO ARGUMENTO OU DEVOLVIDO COMO RESULTADO DEVE PODER SER SERIALIZADO
    • DEFINIÇÃO: processo de transformar os dados do seu formato interno para uma representação externa que possa ser transmitida em uma mensagem
    • O middleware é que realiza o processo de marhalling/unmarshalling
  3. REFERÊNCIA PARA OBJETOS REMOTOS

    • IDENTIFICADOR DE UM OBJETO VÁLIDO NO SISTEMA DISTIBUÍDO
    • OBJETO QUE DESEJAMOS ACESSAR, A REFERENCIA DEVE EXISTIR:
      • NO PROCESSO LOCAL
      • NA MENSAGEM QUE ENVIAMOS AO OBJETO
      • NO PROCESSO REMOTO QUE POSSUI A INSTÂNCIA DO OBJETO CUJO MÉTODO QUEREMOS INVOCAR
      • REFERENCIAS REMOTAS DEVEM SER GERADAS DE MODO A GARANTIR UNICIDADE NO ESPAÇO/TEMPO
  4. COMUNICAÇÃO CLIENTE/SERVIDOR

    • SE COMUNICAM ATRAVÉS DE UM MECANISMO DE TRANSPORTE
    • PROTOCOLO PEDIDO-RESPOSTA (REQUEST-REPLY PROTOCOL)
    • USADO PELA MAIORIA DOS SISTEMAS QUE SUPORTAM RPC E RMI

Informações

Descrição
Sistemas DIstribuídos Mapa Mental sobre COMUNICAÇÃO ENTRE PROCESSOS, criado por Guilherme Moraes em 16-03-2017.
Visualizações
23
Avaliação
Avaliação média 5,0 de 5 (1 avaliação)

Fale Conosco

Sobre o que é sua mensagem?

O que você acha do novo visual?

Você gostou?