são pipes nomeados (mkfifo) o predecessor do RabbitMQ? [fechadas]

1

O RabbitMQ é para comunicação entre processos, como pipes e pipes nomeados? Como o RabbitMQ se compara a pipes nomeados? Exceto sistemas distribuídos.

( RabbitMQ , para aqueles que não o encontraram, é um corretor de mensagens corporativas de código-fonte aberto, middleware que fala AMQP.)

    
por Ivanov 14.12.2015 / 13:35

1 resposta

7

Is RabbitMQ, for inter process communication, like pipes and named pipes?

Não. Essa não é a melhor maneira de compreender o RabbitMQ, ou mesmo os middlewares baseados em corretores de mensagens em geral.

Se você está procurando um paradigma para pendurar seu chapéu metafórico, a fim de começar a entender o RabbitMQ e sua laia, não pense em IPC de baixo nível.

Pense no correio do Unix.

Não é bem mail, é claro, uma vez que se entra nos detalhes.

  • A topologia de roteamento está sob controle de programa do cliente, usando o mesmo protocolo cliente-servidor usado para enviar e receber mensagens.
  • O DNS, em grande parte, não está envolvido.
  • Não é de armazenamento e encaminhamento.
  • As discussões de fan-out são apenas muito próximas como listas de discussão.
  • Os programas do cliente podem usar o protocolo para eliminar filas ( link ) e para definir TTLs nas mensagens.
  • Existem vários graus de durabilidade e persistência.
  • A recepção de mensagens pode envolver handshaking, positivo e < href="http://www.rabbitmq.com/amqp-0-9-1-reference.html#basic.nack"> negativo e re-entrega forçada de forma programática .
  • Existe um paradigma de segurança para controlar quais clientes têm acesso a quais partes da infraestrutura , permitindo que os administradores (digamos) restringir onde os clientes logados com credenciais de usuário "JdeBP" podem enviar mensagens para.

Mas o e-mail é uma boa primeira aproximação para entender os conceitos, muito melhor do que começar comparando com os subsistemas IPC ou RPC, de qualquer forma.

    
por 14.12.2015 / 14:34