Performanceprobleme in fhem Webdiensten

Begonnen von betateilchen, 26 Oktober 2014, 14:10:52

Vorheriges Thema - Nächstes Thema

betateilchen

Ich nutze auf einem Android-Tablet die App webviewcontrol in Kombination mit der html-Ausgabe von 02_RSS.pm. Darin gibt es einen meta refresh, um die Seite regelmäßig (alle 20 Sekunden) zu aktualisieren. Bisher lief das völlig problemlos.

Seit ein paar Stunden funktioniert der refresh nur noch maximal 15 Minuten, danach erfolgt keine Aktualisierung mehr. Am Tablet wurde nichts geändert.

Inzwischen habe ich alle "Verdächtigen" durchprobiert:


  • SSL abgeschaltet
  • Refresh von 20 auf 60 Sekunden umgestellt
  • alle plotAsPng() Aufrufe im RSS Layout deaktiviert, um SVG als Ursache auszuschließen
  • Das von RSS gelieferte PNG per img-Tag in eine eigene Webseite auf Apache eingebaut

Hat alles nix genützt. Sobald per http auf Daten aus fhem zugegriffen wird, bricht irgendwann der Refresh ab, weil offenbar die Daten nicht schnell genug von fhem geliefert werden. Danach erfolgt logischerweise auch kein neuer refresh mehr.

Habe ich irgendeine Änderung in fhem in den letzten Tagen verpaßt, die für dieses Verhalten verantwortlich sein könnte?

webviewcontrol als Ursache kann ich ausschließen, denn ein Webseitenrefresh einer fhem-freien Webseite funktioniert einwandfrei.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Zitat...weil offenbar die Daten nicht schnell genug von fhem geliefert werden
Nach dieser Theorie waere FHEM 15 Minuten lang schnell genug, aber danch nicht mehr (?).  Browser warten normalerweise relativ lange auf dem Server bevor sie aufgeben, das wuerde bedeuten, dass dein FHEM mehrere Minuten lang komplett blockiert ist.

Zitatwebviewcontrol als Ursache kann ich ausschließen, denn ein Webseitenrefresh einer fhem-freien Webseite funktioniert einwandfrei.
Ich sehe die Logik hinter dieser Beweisfuehrung nicht. Ich wuerde es lieber andersherum testen wollen: hast du das Problem  auch mit einem "normalen" Browser auf einem "richtigen" Rechner?

Mir fallen keine Aenderungen in der letzten Zeit in fhem.pl/FHEMWEB ein, die sowas ausloesen koennten.

Kannst Du bitte:
- in /proc/<fhempid>/fd pruefen, ob jemand FD's nicht geschlossen hat
- messen, wie lange ein request dauert, bzw. ob Haenger zu sehen sind. Vmtl. reicht ein "attr WEB verbose 4" dafuer aus.

betateilchen

Ich weiß schon, das ist alles sehr unspezifisch geschrieben.

webviewcontrol hört (seit neuestem) einfach irgendwann auf, http-requests zu verschicken, sobald ein Zugriff auf fhem in der Webseite enthalten ist. Das Ganze hat viele Monate völlig störungsfrei funktioniert - ich habe einfach keinen Ansatz, wo ich suchen soll. Dass fhem wirklich "schuld" sein soll, kann ich mir irgendwie auch nicht vorstellen.

Im Moment stehe ich in der Brotbackstube und bin am Teig kneten. Vielleicht habe ich heute abend wieder Lust, an diesem Fehlerbild weiterzusuchen.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Dr. Boris Neubert

Ich habe in den letzten Wochen an RSS gebasteltet - bin mir aber im Moment nicht im Klaren, was ich davon eingecheckt habe. Einen Zusammenhang mit einem Update vom RSS-Modul kannst Du ausschließen?

Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

Hallo Boris,

die letzte Änderung an 02_RSS.pm war Mitte September. Ich rede von einem Problem, das ich erst seit 3 oder vier Tagen habe. Kann also m.E. nichts mit dem letzten 02_RSS Update zu tun haben, da ich von meiner Seite nichts an meinen RSS-devices geändert habe.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Dr. Boris Neubert

Hallo Udo,

ich kann auch nur ein paar Schüsse ins Dunkel abgeben, basierend auf meinen Erfahrungen mit langlaufenden Erstellungen von RSS-Seiten und den Schwierigkeiten, die ich bei der noch nicht abgeschlossenen Umstellung der Auslieferung von RSS-Seiten aus einem nebenläufigen Kindprozess heraus gemacht habe.

- Hinweise von Rudi, insbesondere die Zugriffs- und Antwortzeiten mit verbose 5 oder so loggen
- siehe dazu auch meinen Thread zu "Hänger finden" sowie den Eintrag zu Filedescriptoren von mir im fhemwiki.de
- apptime benutzen
- ausprobieren, ob Problem auch mit dem Browser am PC auftritt
- Ist absolut ausgeschlossen, dass sich das Control aktualisiert hat, welches Webseiten auf dem Tablet anzeigt?
- Verbindet sich das Tablet mit einem anderen, entfernteren Access Point, so dass die Datenrate zu gering ist?

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

Zitat von: rudolfkoenig am 26 Oktober 2014, 15:26:45
Ich wuerde es lieber andersherum testen wollen: hast du das Problem  auch mit einem "normalen" Browser auf einem "richtigen" Rechner?

Ich kann das Fehlverhalten in Google Chrome auf meinem Macbook Air reproduzieren, das Problem tritt nach ca. 10 refreshs auf. Danach erfolgt kein weiterer refresh mehr. Mal schauen, wie Safari sich verhält.

Der "Standard-Browser" auf meinem Android Tablet zeigt das Fehlverhalten auch.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Genau so wie das Problem aufgetreten ist, hat sich der Spuk wieder verabschiedet. Seit gestern abend 19 Uhr läuft alles wieder problemlos durch. Und ich habe definitiv nichts geändert.

Auf der einen Seite bin ich ja froh darüber, aber irgendwie beunruhigt mich das Ganze doch.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Dr. Boris Neubert

Zitat von: betateilchen am 27 Oktober 2014, 19:22:20
... aber irgendwie beunruhigt mich das Ganze doch.

Mich beunruhigt Fhem auch. Heute morgen habe ich einen mehrminütigen Hänger gehabt, obwohl RSS gerade gar nicht aufgerufen wird. Bis ich die Diagnosewerkzeuge ausgepackt hatte, lief dann alles wieder. Irgendein socket read oder write... Ich bekomme meine Installation ums Verrecken nicht so stabil und geschmeidig wie ich es brauche. Die heterogene Struktur mit x verschiedenen Systemen und multiple points of failure ist wohl der limitierende Faktor.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

betateilchen

Zitat von: Dr. Boris Neubert am 27 Oktober 2014, 19:47:53
Ich bekomme meine Installation ums Verrecken nicht so stabil und geschmeidig wie ...

... es noch vor ca. einem Jahr möglich war :(
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

herrmannj

lösch mal per Telnet alle FHEMWEB.* Instanzen. Funzt bei mir und war im Forum auch bei anderen usern schon erfolgreich. Doof allerdings: wenn der refresh "durch ist" wird es der laufenden webview wohl jetzt nichts mehr bringen ...

betateilchen

Zitat von: herrmannj am 15 November 2014, 22:51:03
lösch mal per Telnet alle FHEMWEB.* Instanzen. Funzt bei mir und war im Forum auch bei anderen usern schon erfolgreich.

hab ich gelesen, ist aber bei mir nicht das Problem.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

herrmannj