Quando utilizzare il protocollo avanzato di Accodamento messaggi come RabbitMQ? [chiuso]

44

Qualcuno può spiegarmi in quali casi d'uso dovrei considerare l'utilizzo di AMQP come per es. RabbitMQ? Quali sono i pro e i contro?

    
posta vbd 28.04.2012 - 10:25
fonte

2 risposte

25

Immagina di avere un servizio web che può accettare molte richieste al secondo. Hai anche un sistema di contabilità che fa un sacco di cose, una delle quali è l'elaborazione delle richieste provenienti dal servizio web.

Se metti una coda tra il servizio web e il sistema di contabilità, sarai in grado di:

  • hanno un minore accoppiamento tra le due applicazioni, perché ora entrambe le applicazioni devono conoscere i parametri di configurazione del sistema di gestione delle code e il nome della coda. Qui il problema è che in genere è più probabile che tu trasferisca su un altro server qualche applicazione piuttosto che spostare il sistema di gestione delle code
  • se hai un sacco di richieste in arrivo in un breve lasso di tempo, il sistema di contabilità sarà in grado di elaborarle tutte comunque
  • persistono alcune richieste se il loro numero diventa veramente enorme

Ovviamente, potresti avere situazioni più complesse in cui il numero delle tue applicazioni è molto più grande di due e devi gestire la comunicazione tra loro.

    
risposta data 28.04.2012 - 10:56
fonte
16

Oltre a fornire un buffer tra un servizio Web e un altro servizio di backend, le code di messaggi possono essere utilizzate per scenari più avanzati. Rabbit MQ (e altri prodotti di Message Queue maturi chiamati anche MOM - Middle Oriented Middleware) possono essere configurati per instradare e distribuire messaggi in base a regole diverse.

Ad esempio, la tecnica di instradamento Pub-Sub consente a una singola fonte di inviare un messaggio e ricevere molti ascoltatori. Questo è comunemente usato dal software di trading azionario per mantenere aggiornati gli utenti sul pavimento.

Anche perché la maggior parte delle MOM hanno sdk per più lingue e piattaforme, possono essere utilizzate per integrare applicazioni scritte su piattaforme diverse.

Questi sono solo alcuni degli scenari attivati da MOM.

    
risposta data 28.04.2012 - 14:55
fonte

Leggi altre domande sui tag