FHEM friert ein, wenn WebClient beim Verbinden abraucht

Begonnen von dero, 10 Januar 2014, 21:32:02

Vorheriges Thema - Nächstes Thema

dero

Hi,

wenn ich mit einem Phone (etc.) die Seite aufmache und in dem Moment das Device abraucht, friert FHEM für ~10 min ein.

Ich denke, es liegt daran, dass FHEM single-threaded ist und das die Socket-Verbindung nicht ordentlich terminiert wurde und hängt. (Naturgemäß werden tote Sockets erst beim Schreiben erkannt...)

In einem anderen Thread habe ich gelesen, dass es einen Fix für ein ähnlich gelagertes Problem beim Event-Monitor gibt (long-poll).

Gibt's eine Möglichkeit die Timeouts für Sockets zu reduzieren???

dero

rudolfkoenig

Bitte konkreter werden, "abraucht" ist zu nebuloes.

Seit ein paar Monaten schreibt FHEMWEB und telnet Daten per select, d.h. ein abwesendes Geraet sollte FHEM nicht blockieren.

dero

Abraucht = einfach aus dem Netz verschwindet, ohne alle Connections zu closen. Konkret: ich bin genau beim Öffnen von FHEMWeb aus der Reichweite meines WLANs gelaufen.

ersion $Id: fhem.pl 4099 2013-10-22 20:55:35Z rudolfkoenig $, os linux, user fhem, pid 1961

dero

rudolfkoenig


dero


Joachim

FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

dero

#6
Habe den Thread gelesen.

"Continuous Integration" ist das Zauberwort. Erfordert aber Disziplin...

Bevor sich einer auf den Schlips getreten fühlt: Ich finde FHEM einfach genial und nutze es jetzt auch für meine Alarmanlage. Die Funktionalität ist atemberaubend. Da ist es natürlich schade, wenn man sich auf keine stabilen Releases verlassen kann. Ausgereifte automatische Tests mit guter Abdeckung wären der erste Schritt. Geräte müssten dann als Mock Ups gebaut werden. Ist natürlich extrem aufwändig für so einen Alleskönner...

dero