Badamy różne przypadki użycia rozwiązań IoT. Aby ułatwić eksplorację, eksperymentowanie, projektowanie, rozwój i testowanie możliwych rozwiązań, badam możliwość lokalnego skonfigurowania prostego serwera IoT.
Dlatego chciałbym zrozumieć podstawową architekturę serwerów obsługujących urządzenia IoT. Mówiąc ogólnie, urządzenia IoT łączą usługę, która obsługuje dane i udostępniają informacje do wykorzystania przez inne urządzenia. To jest całkiem proste.
Na razie możliwe urządzenia brzegowe IoT będą korzystać z Wi-Fi, ale planują migrację do niskiej prędkości transmisji danych, protokołu o małej mocy, takiego jak ZigBee, BLE, lub może być Z-Wave, w którym to momencie będę potrzebował pewnego rodzaju koncentratora . Ładunek danych będzie wynosił około 100 bajtów, w szczycie transmisja może wynosić nawet jedną transakcję na minutę. Urządzenia brzegowe IoT przeważnie przesyłają dane, od czasu do czasu pobierając je na urządzenia.
Sugeruje się, że patrzę w MQTT i RabbitMQ jako możliwych opcji. Zostałem również skierowany do „ Wyświetlanie wiadomości MQTT w przeglądarce w czasie rzeczywistym ”, na który patrzę w momencie pisania.
Oto kilka pytań, które moim zdaniem są powiązane:
- Co odróżnia serwer IoT od serwera WWW, serwera poczty lub serwera FTP?
- Jaka jest podstawowa architektura podstawowego serwera IoT?
- Jakie cechy są ważne przy rozważaniu prostego, lekkiego serwera IoT?
źródło
Jak wskazał @ralight, serwer IoT działa ze stosem protokołów IoT. Nie jest to ograniczone do jednej warstwy OSI, w rzeczywistości każdy etap jest lub może być zoptymalizowany pod kątem wykorzystania Internetu Rzeczy i oczywiście potrzebne są nowe protokoły.
Możliwe jest również, że sprzęt jest nietypowy: w niewielkiej konfiguracji urządzenie do gromadzenia danych, takie jak Raspberry PI, może utrzymywać zadania serwera w całości lub częściowo.
Częściowo oznacza obliczenia przeciwmgielne, w których dane są przetwarzane w miejscu ich gromadzenia, a tylko wyniki końcowe trafiają na główny serwer.
Z tej strony niektóre specyfikacje sprzętowe:
Podstawowy sprzęt serwerowy.
Nie mam na to większego wglądu, ale osobiście chciałbym dowiedzieć się, czy Raspberry PI wystarcza jako serwer MQTT. Czytałem gdzieś w Quora, że Esp8266 nie jest, ale widziałem normalnego Linux-a pracującego na RPI, więc dlaczego nie mógłby działać również jako serwer.
Przed wypróbowaniem Raspberry należy jednak wziąć pod uwagę wymagania sprzętowe wybranego stosu usług. Przy normalnym sprzęcie serwerowym ilość pamięci jest obecnie tak duża, że nie będzie problemu.
Wspomniane 3000 msg / s jest stosunkowo wysokie w porównaniu do przypadków testowych IoT, a RPI3 ma 1G RAM. To połowa, więc zależy to od tego, czy wiadomości wypełniają pamięć w tym przypadku, czy ile potrzebuje nagi MQTT. Wpływa to na to, jak by to było odpowiednie.
źródło