IPS Warteschlange

Ich stelle anhand der Meldungen fest das der Zeitstempel der Meldungen bis zu 20 Minuten von der aktuellen Zeit abweichen kann !!!

Das führt dann natürlich zu einer verspäteten abarbeitung von Realtime events.

Welche Faktoren beeinträchtigen den Aufbau der Warteschlange am meisten ?? (Anzahl Variablen, Anzahl Datenbank Loggings, Anzahl Webseiten etc. ???)

Meine CPU last sowie die RAM Nutzung liegt auch bei vorhandensein einer Warteschlange bei ~ 50%

Ich vermute daher das es sich um ein I/O Problem handelt (Platte ??)

Anyway ich will eigentlich nicht spekulieren

Ich habe das System etwas weiter vermessen.

Installiert sind zur Zeit 226 Geräte, darunter einer ganze Menge Sensoren (Strom / Gas Verbrauch / Temperatur und Feuchtigkeit etc.)

Insgesamt generiert das laut Logfile so um die 300 Nachrichten pro Minute mit Spitzen von 10 Nachrichten pro Sekunde.
Ich lasse so ziemlich alle Werte in die Datenbank schreiben.

Sobald ich die Webseite (9 Reiter mit jeweils 6 Graphen) anwähle baut sich eine Warteschlange auf mit ca. 2 Min. Delay (Diff. Zeitstempel Meldung zu PC Uhr)

Meine Platte dreht nur mit 5400 U/Min. das dürfte die Schwachstelle sein. Ich werde jetzt eine SSD einbauen und mal schauen was das bringt.

Mittlerweile habe ich eine SSD eingebaut, leider ohne Erfolg.

Der Zeitstempel der Meldungen ist identisch mit der PC Uhrzeit solange ich das Webfront nicht aufrufe.
Sobald ich auf einem anderen PC das Webfront aufrufe treten in ~ 1 Minuten Intervallen Verzögerungen von ca. 2 Minuten auf.
Das heißt das die Uhrzeit der Meldungen (und die abarbeitung der Skripte um 2 Minuten differieren.

Im PHP Fenster sind dann jede Menge Webfront Scripte zu sehen die alle eine rote Farbe haben und sich nicht mehr veränderen (sie bleiben stehen)
Nach einiger Zeit verschwinden die Webfront Abfragen nach und nach und die Meldungen werden schneller abgearbeitet und sind dann irgendwann wieder synchron.Das Spiel wiederholt sich ständig.

Schalte ich die Webabfrage ab läuft IPS wieder normal.

Liebe IPS Programmierer … Ich fühle mich mit meinem Problem ziemlich alleingelassen :mad: Ich unterhalte mich jetzt seit einiger Zeit nur mit mir selbst in diesem Forum. Die 136 € für die SSD hätte ich mir auch sparen können.

Ich werde jetzt in IPS das Webfront löschen und neu aufbauen. Das ist mit ziemlich viel Arbeit verbunden.

Wie gesagt Ratschläge sind wilkommen oder auch nur der Hinweis das es sich hier um ein IPS Problem handelt das irgendwann behoben wird :slight_smile:

… das klingt danach, als ob in der WebFront-Konfiguration irgendetwas steht, was diese zum „Aufhängen“ bringen. Die roten Markierungen stellen normalerweise fehlerhafte Scripts dar. Nach einem PHP-Timeout (über die php.ini zu definieren), werden diese „hängenden“ WebFronts dann irgendwann einmal geschlossen.

Da das WebFront, welches mittels der Baumstruktur normalerweise einwandfrei funktioniert, kann es eigentlich nur sein, dass eigene WebSites das Problem verursachen. Hast du solche selbst erstellten Sites eingebaut (z.B. die Wetterseite von RWN?). Wenn ja, sollte sich da am ehesten der Fehler finden. An sonsten würde ich dir empfehlen, dieses Verhalten mal unter Bugs/Updatewünsche zu posten.

Viele Grüße …

Nur mal so als Tip… LOG Files, hier gepostet, könnten hilfreich sein die Aufmerksamkeit auf Dein Problem zu lenken.

Zusätzlich wäre die Frage zu stellen welchen WebBrowser Du nutzt, da auch diese verschiedene nebeneffekt haben können.

Damit wäre einer sachdienlichen Lösung sicherlich geholfen…

Gruss
b71

311 Messages die auch noch geloggt werden / Minute ist echt mächtig…

Erstmal vielen Dank für die schnellen Antworten

Ich nutze Chrome als Browser, der Fehler tritt allerdiings auch beim IE auf

Ich habe Screenshots und das Logfile beigefügt

Die Webseite enthält keine selbstgeschriebenen Seiten. Wetterseite etc. habe ich schon vorsichtshalber gelöscht (siehe Screenshots)

Im Logfile sieht man das die Webscripts doch sehr lange laufen :frowning:

teil 2.txt (168 KB)

Log teil 1.txt (166 KB)

Die Lösung des Problems ist ganz einfach:

SQLite ist nicht für das Loggen von 200 Variablen ausgelegt. Reduziert es auf 20 und alles wird gut. Wir arbeiten daran, dass man SQLite gegen einen richtigen DB Server tauschen kann, der dann die nötige Performance liefern kann, aber so wie es jetzt ist, überforderst du die Datenbank maßlos. Während du noch Daten in die DB schaufelst, willst du im WebFront einige Graphen angezeigt bekommen. Das packt die Datenbank einfach nicht, die Daten in Echtzeit ans WF zu liefern.

Tipp: Reduzier die Anzahl der geloggten Variablen erheblich oder deaktiviere die Anzeige der Graphen im WebFront und schau dir die Graphen über die dashboard.php an. (http://www.ip-symcon.de/forum/f20/graphen-dashboard-php-10020/)

Ich vermute außerdem, dass deine CPU am Anschlag sein wird, sobald das WebFront geöffnet wird.

paresy

Danke, damit weiß ich zumindest woran ich bin.

Die Erklärung ist schlüssig

Ich werde mich mit dem Dashboard beschäftigen und mal genau nachschauen welche Variablen Historie ich zwecks Analyse wirklich benötige

Die CPU ist übrigens nicht am Anschlag (siehe screenshots) Ich vermute das der Performance Einbruch mit sequntiellen exclusiv Zugriffen auf die Datenbank zu tuen hat, aber Ihr arbeitet ja schon dran (Konzept neue DB)

mit webfront.JPG

ohne webfront.JPG

Dashboard

Nicht Dashboard… Sondern dashboard.php. Die zeigt einzelne Graphen im WebBrowser an, ohne dem WebFront drumrum. Damit kannst du auch mal messen, wie lange bei dir ein Graphaufbau dauert.

paresy

Dashboard.php funktioniert und ist super schnell !!!
Response time im 1 sekunden Bereich, auch bei Jahreszeitreihen etc.

Dann werde ich das mit dem default Webfront erstmal lassen.

Meine Vergleiche kann ich ja als Snapshot fahren und zur Not über mehrere Browser Fenster Ursache und Wirkung analysieren