Řešení problémů při selhání připojení klienta MQTT
Pokud se klient MQTT nemůže připojit ke kanálu telemetrie, může existovat řada různých příčin.
Postup
Zvažte následující možnosti diagnostiky problému selhání připojení klienta MQTT:
- Zkontrolujte, že jsou spuštěny správce front a služby telemetrie (MQXR).
Spusťte správce front. Při výchozím nastavení by měla služba MQXR být spuštěna spolu se správcem front. Pokud jste službu MQXR konfigurovali k ručnímu spuštění, může být nutné spustit ji ze složky Služby. Další informace o spuštění služby MQXR naleznete v tématu Spuštění a zastavení služby MQXR.
- Zkontrolujte, že je správně definován a spuštěn kanál telemetrie a služba telemetrie (MQXR).
Službu MQXR můžete definovat ručně a nastavit výchozí přenosovou frontu správce front na hodnotu
SYSTEM.MQTT.TRANSMIT.QUEUE
, která má přednost před existující výchozí přenosovou frontou. Správce front je tak vhodné použít pro funkci Telemetrie. Případně můžete spustit průvodce Definovat ukázkovou konfiguraci na úvodní stránce funkce Telemetrie, pokud jste tak dosud neučinili. - Vytvořili jste vlastního klienta?
Pokud ano, vytvořili jste aplikaci klienta s protokolem MQTT verze 3, nikoli s protokolem verze 5? Pokuste se problém izolovat pomocí obslužného programu klienta protokolu MQTT.
- Máte platný název identifikátoru klienta?
Při připojování k produktu IBM® MQ měl by identifikátor klienta MQTT mít méně než 23 a měl by obsahovat pouze abecední znaky, číselné znaky, tečku (.), lomítko (/), podtržítko (_) a znak procenta (%).
- Připojili jste se ke klientovi MQTT a vyčerpali interval Udržování připojení MQTT?
Atribut udržení aktivity je intervalem v milisekundách, po jehož uplynutí dojde k odpojení klienta MQTT v důsledku neaktivity. Pokud služba MQXR neobdrží od klienta žádné komunikační sdělení během intervalu udržení aktivity, dojde k jejímu odpojení od klienta.
- Pokouší se ke kanálu telemetrie připojit velký počet klientů MQTT najednou?
Každý kanál telemetrie má atribut nevyřízené položky. Jedná se o počet požadavků na souběžné připojení, které kanál telemetrie podporuje. Ujistěte se, že tato hodnota není nastavena na menší číslo, než je počet klientů MQTT pokoušejících se o připojení.
- Zkontrolujte, zda je připojení TCP/IP stále aktivní.