X cihaz sayısı için MQTT konularının balta sayısını oluşturmak gerekli mi?


9

Şu anda denetleyicinin (istemci) sunucuya sensör verilerini gönderdiği ve sunucudan bazı ek verilerle geri bildirim aldığı projemde iletişim için MQTT protokolü kullanılıyor. İstemci ve sunucu için 2 ayrı konu vardır.

Örneğin:

Konu1 - İstemci (ABONELİKLER), Sunucu ( YAYINLAR ) Konu2 - İstemci (YAYINLAR ), Sunucu (
ABONELİKLER)

Ancak bu proje daha büyük bir uygulamanın kullanım örneği ise, diyelim ki bazı yerlere 5000 cihazın kurulması gerekiyor.

Peki, hem istemci hem de sunucu için 5000 farklı konu oluşturmak gerekecek mi? Ya da daha az konu ile yapılabilir ve nasıl?


1
Sizce neden çok fazla konuya sahip olmak bir sorun?
hardillb

1
Muhtemelen yazılım hepsini yönetmek zorunda kalacaktı.
Mawg, Monica'yı

1
@hardillb Bu bir sorun değil ... sadece merak ediyordum ... ama bir MQTT konusunun bir alt konusu olabilir mi?
ron123456

2
Tabii ki, konular hiyerarşiktir, bu nedenle herhangi bir şema tasarlanabilir. Sparkplug s3.amazonaws.com/cirrus-link-com/… , kenar düğümü ve kenar düğümü arkasındaki aygıt başına birkaç konu içerir.
Gambit Destek

Yanıtlar:


5

İstemciden sunucuya, istemci kimliğini faydalı yük olarak paketleyebilirsiniz, örneğin JSON ise, anahtarlardan birinin istemci kimliği değeri olabilir.

Sunucudan istemciye yanıt, aracının ileti yayınlamaması, ancak doğrudan bağlı bir istemciye göndermesi için istemci kimliği içermelidir.

Aynı zamanda sunucunuzu "istekler / +" gibi bir şeye abone olabilirsiniz ve her müşteri "request / {client-id-1}", "request / {client-id-2}" ve sunucuda yayınlar her ikisini de yalnızca bir abonelikle alırsınız.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.