Node.js mit Sockel.IO und Firmata auf Raspbian (Modell B) läuft langsam
-
21-12-2019 - |
Frage
Ich bete ein Raspberry PI-Modell B (512 MB RAM) mit einer 16-GB-300-MB / s-SD-Karte und der letzten Raspbian mit allen Updates.
Auf diesem Computer habe ich einen Apache2-Server-Server, Knoten.js mit Socket.IO und Firmata eingerichtet.
In meiner Webanwendung ist das Video-Streaming eine Schlüsselfunktion.
Wenn ich nur auf meinen Webserver zugreifen kann, um die Videos zu streamen (ohne Node / Socket.IO / FIRMATA), strömt alles mit einer guten Leistung. Wenn ich jedoch node.js / socket.io / firmata einschalten, ist es eher langsam, dauert es 5-7 Sekunden, um die Videos zu streamen.
Ich hatte Probleme, node.js an erster Stelle zu installieren. Node.js aus der Quelle zusammengestellt / installiert wie ein Zauber, aber als ich versuchte, es auszuführen, habe ich diese mysteriöse "illegale Anweisung" -Meldung erhalten.
Als Alternative nahm ich die vorkompilierten Debian-Pakete und installierte sie mit dpkg mit diesem Repo:
http://revryl.com/2014/01/04/nodejs -SPRY-PI /
Sie sagen, dass Nodejs langsamer laufen, aber das ist für mich nicht akzeptabel.
irgendwelche Hinweise?
Danke und Grüße!
Lösung
Allright, es ist jetzt schneller. Für jeden mit diesem Problem:
- .
- Entsorgen Sie Apache2 und verwenden Sie stattdessen lightpd.Schauen Sie sich einfach diese Seite an und sehen Sie, warum: http:// www.jeremymorgan.com / Blog / Programmierung / Raspberry-PI-Web-Server-Vergleich /
- starten Sie node.js über Skript und geben Sie in /etc/rc.local aus irgendeinem Grund, dass er viel weniger RAM verwendet und CPU, wenn im Leerlauf.
- Versuchen Sie, Firmata zu vermeiden.Wenn Sie kontrollieren müssen Hardware, die eine einfache Verdrahtung erfordert, versuchen Sie, das "PI-GPIO" zu verwenden.Es ist Viel schneller und verwendet weniger Ressourcen.Sie brauchen auch nicht Ihren Arduino mehr, wie Sie nur den RPI verwenden können.