Blog HiveMQ wymienia pod „najlepszymi praktykami”, aby nie subskrybować wielopoziomowego symbolu wieloznacznego podczas próby zrzucenia wszystkich wiadomości do bazy danych. Twierdzą, że klient subskrybujący może nie być w stanie nadążyć za dużym obciążeniem wiadomości i proponują użycie wtyczki brokera do bezpośredniego połączenia się ze strumieniem wiadomości.
Czasami konieczne jest subskrybowanie wszystkich wiadomości przesyłanych przez brokera, na przykład podczas utrwalania ich wszystkich w bazie danych. Nie należy tego robić za pomocą klienta MQTT i subskrybowania wielopoziomowej karty wieloznacznej. Powodem jest to, że często subskrybujący klient nie jest w stanie przetworzyć obciążenia nadchodzących wiadomości. Zwłaszcza jeśli masz ogromną przepustowość. Naszym zalecanym rozwiązaniem jest wdrożenie rozszerzenia w brokerze MQTT, na przykład system wtyczek HiveMQ pozwala zaczepić się o zachowanie HiveMQ i dodać procedurę asynchroniczną do przetwarzania każdej przychodzącej wiadomości i utrwalania jej w bazie danych.
Czy tam też jest?
- podobny system (rozszerzenie / wtyczka) dla brokera komarów,
- inna zalecana metoda, która działa z komarem, lub
- uzasadnione dowody, że takie podejście jest w ogóle niepotrzebne, tj. że klient subskrybujący
#
może zrobić dobrze?
/programming//q/31584613/3984613 nie rozwiązuje w sposób wyczerpujący tego pytania.