Pentru a preveni ca un proces Erlang să epuizeze complet memoria serverului (provocând intervenția bruscă a OOM Killer din Linux), RabbitMQ dispune de un sistem automat de auto-apărare numit Resource Alarms. Când consumul de RAM sau discul depășesc pragul critic, brokerul blochează temporar toate conexiunile producătorilor.
Configurarea limitelor de memorie și disc în /etc/rabbitmq/rabbitmq.conf
# 1. Alarma de Memorie: Limitează brokerul la 40% din RAM-ul fizic total al mașinii:
vm_memory_high_watermark.relative = 0.4
# 2. Paginare pe disc: Mesajele încep să fie descărcate pe disc la 50% din limita de mai sus:
vm_memory_high_watermark_paging_ratio = 0.5
# 3. Alarma de Spațiu Liber pe Disc: Dacă discul scade sub 5GB liberi, scrierea se oprește:
disk_free_limit.absolute = 5GB
# Verificare prin linia de comandă:
# $ rabbitmqctl status
# Căutați secțiunea: Alarms: [{resource, memory}, {resource, disk}]
Întrebări & Exemple de Cod:
Alarme de Resurse și Flow Control în RabbitMQ: Memory Watermark și Disk Free LimitAi o nelămurire despre utilizarea comenzii
Alarme de Resurse și Flow Control în RabbitMQ: Memory Watermark și Disk Free Limitsau 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.