Wszystkie umiejetnosci
Backend Zaawansowany

RabbitMQ

RabbitMQ trafia do projektu wtedy, kiedy aplikacja musi robić kilka rzeczy naraz bez wzajemnego blokowania. Wysłanie e-maila po rejestracji, przetworzenie importu 10 000 produktów, generowanie PDF-a w tle — to są zadania dla kolejki, nie dla synchronicznego requesta.

W praktyce używam go z Laravelem (Laravel Queues z driverem AMQP) oraz w projektach mikroserwisowych, gdzie różne usługi muszą wymieniać zdarzenia. RabbitMQ daje mi tutaj pewność dostarczenia wiadomości, możliwość ponowienia w razie błędu i przejrzyste monitorowanie co czeka w kolejce.

Konfiguruję go z reguły w Dockerze — razem z resztą stacku, żeby środowisko było spójne lokalnie i na produkcji.

Nie jest to technologia, którą proponuję do każdego projektu — prosty cron lub wbudowane queues często wystarczą. Ale kiedy system rośnie i synchroniczne przetwarzanie zaczyna spowalniać użytkowników, RabbitMQ to naturalne rozwiązanie.

Jeśli Twoja aplikacja ma podobny problem z wydajnością lub niezawodnością — porozmawiajmy o możliwych rozwiązaniach.

4 projekty

Brak projektow i artykulow zwiazanych z ta technologia.