Ce se întâmplă când setezi mandatory=True
Dacă un producător trimite un mesaj către un Exchange cu flag-ul mandatory=True, brokerul încearcă să îl distribuie conform regulilor de rutare. Dacă nicio coadă nu acceptă mesajul, brokerul nu îl va arunca la coș, ci îl va trimite înapoi expeditorului printr-un pachet protocolar basic.return.
Exemplu Concret: Înregistrarea callback-ului de mesaj returnat
def on_return_handler(channel, method, properties, body):
print(f"Mesaj nerutabil respins! Cheie: {method.routing_key}, Conținut: {body}")
channel.add_on_return_callback(on_return_handler)
channel.basic_publish(
exchange='exchange_direct',
routing_key='cheie_inexistenta',
body=b'Date importante',
mandatory=True
)
Întrebări & Exemple de Cod:
Return Callback (mandatory) în RabbitMQAi o nelămurire despre utilizarea comenzii
Return Callback (mandatory) în RabbitMQsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.