Jestem dobry w uniksowych poleceniach i skryptach, ale prawie nie mam doświadczenia w sieci. Mam skrypt, który pobiera dane, które mnie interesują, takie jak obciążenie procesora lub temperatura systemu i aktualizuje plik co 10 sekund. Chciałbym skierować iPada na lokalną stronę internetową obsługiwaną przez mój Raspberry Pi, która ma aktualizację graficzną tych danych w czasie rzeczywistym.
Pracowałem przed skonfigurowaniem prostego serwera WWW Apache i mogę pisać HTML i JavaScript. Poza tym jestem zagubiony i potrzebuję kogoś, kto wskaże mi właściwy kierunek.
unix
apache-http-server
raspberry-pi
gui
jake9115
źródło
źródło
Odpowiedzi:
Używam Grafana z InfluxDB do tego na moim Raspberry Pi 3. Oba są stosunkowo łatwe w konfiguracji i łączą się ze sobą. Działają nawet dobrze w pojemnikach Docker na Raspberry Pi.
Wszystkie moje aktualizacje przesyłam strumieniowo do InfluxDB w miarę ich generowania. Następnie Grafana wykonuje całą pracę graficzną, wyświetlając je w ładnym formacie wizualnym. Zaprojektowałem prosty pulpit dla mojego starego iPada z jego mniejszym ekranem.
Wygląda na to, że jest dużo instalacji i narzutów, ale na pewno wygląda ładnie.
źródło
Aby mieć lekki i bardzo łatwy pulpit do monitorowania sieci, aby skonfigurować (i rozszerzyć) stronę monitorowania na swoim Raspberry, masz Monitor RPi .
Ma kilka ustawień domyślnych, a konfiguracja polega głównie na edycji kilku prostych plików tekstowych. Skonfigurowałem go łatwo, aby dodać wykresy wilgotności z DTH21.
źródło
Najlepszym narzędziem do aplikacji internetowych w czasie rzeczywistym jest WebSocket . Zazwyczaj są one zaimplementowane na serwerze aplikacji, a nie na serwerze WWW, ale Apache zapewnia sposób na serwery proxy. Może to z łatwością zapewnić aktualizacje na sekundę lub na sekundę.
Biblioteka, której używasz na serwerze aplikacji, zależy od platformy internetowej, z której chcesz korzystać, ale na przykład popularną biblioteką dla Node.js jest Socket.IO.
Po stronie klienta możesz skonfigurować takie połączenie:
Po stronie serwera za pomocą Node.js przy użyciu podstawowej biblioteki WebSocket:
źródło
Możesz także spojrzeć na Node-RED https://nodered.org Jest dostępny na Raspbian
Oto panel, który zbudowałem
źródło
Używam phpSysInfo do monitorowania wszystkich moich serwerów / komputerów z Linuksem i naprawdę podoba mi się to, jakie to proste. Ustawienia są również bardzo łatwe do zrozumienia i można ustawić własną częstotliwość odświeżania.
źródło
Jeśli chcesz kodować w C lub C ++, możesz użyć biblioteki bibliotek HTTP, takich jak libonion lub Wt, aby zakodować swój wyspecjalizowany serwer HTTP (być może używając sqlite do bazy danych). Następnie powinieneś dobrze zrozumieć protokół HTTP (w tym pliki cookie HTTP i nagłówki HTTP ) oraz HTML5 .
Możesz użyć technik Ajax i WebSocket (WebSockets są obsługiwane przez libonion & Wt, Ajax wysyła zwykłe żądania HTTP inicjowane przez kod JavaScript działający w przeglądarce klienta). Możesz użyć HTML5 canvas i / lub SVG do grafiki. Przydatne mogą być niektóre frameworki HTML5 ; większość z nich używa Javascript, DOM, HTML5, ....
źródło