Améliorer le polling (étaler les actions)

Discutez ici de vos souhaits d'évolutions et de vos idées pour eedomus

Améliorer le polling (étaler les actions)

Messagepar thrymartin » 21 Mars 2020 05:51

Hello le staf

de temps à autre, l'acquisition de données ne suit pas le polling et "saute son tour"
(je comprend que ça puisse arriver si l'eedomus est très occupée à ce moment la ou quelque chose du genre...)

Hé non, ce n'est pas la même question, même si c'est lié : si l'Eedomus est très occupée à ce moment la ou que le reseau Z Wave sature, c'est peut être que les pooling se déclenchent un peu au hasard de la mise en place et qu'on peut se retrouver avec des mises à jour de capteurs pendant un intervalle très court !

évidemment ça ne concerne pas les périphériques à pile pour lesquels on n'y peut rien, à part essayer d'agir sur lesdits périphériques, si c'est possible...
mais ça concerne les périphériques secteurs et les acquisitions web (plugin)

exemple, on va avoir plusieurs capteurs avec
depuis 1 mn / depuis 1mn / depuis 2 mn
puis ça saute à d'autres depuis 20' / depuis 20' / depuis 21'

alors que ça gagnerai à être réparti ! genre si il est détecté 2 plugins qui se mettent à jour à moins de 1' d'intervalle par exemple, alors en décaler un dans un "trou"
à la limite, on pourrait même faire un plugin pour SI on avait la maitrise de ce "depuis x mn" (avec une remise a zero immédiate (je suppose qu'un script peut récupérer ce "depuis x mn", sinon, il faut l'avoir)

dpnc au minimum, pour ne pas surcharger le staf, il y a il une commande, ou peut on en avoir une pour forcer la réinitialisation du pollng ?
(on a un "depuis x mn", et avec cette commande, on a une acquisition immédiate avec un "depuis 0 sec")

c'est ma suggestion

en plus ça pourrait servir aux acquisitions web avec cache pour ne pas se retrouver avec par exemple, sur 20 données, avec un pooling a 30' une donnée qui fait l'acquisition et 19 qui lisent le cache 29' apres ...)
thrymartin
 
Messages : 578
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Améliorer le polling (étaler les actions)

Messagepar thrymartin » 16 Juil 2020 13:54

Bon, ben en l'absence d'une telle fonction (ou d'un plugin, s'il est réalisable), voila un truc :

je rappelle le problème : pour limiter la charge de travail instantanée de l'Eedomus et l'encombrement du réseau Z-Wave, il est mieux que les périphériques et autres scripts soient appelés de manière étalée dans le temps et pas "tous en même temps"

déjà savoir que normalement, les actions se désynchronisent parce qu'elles prennent plus ou moins de temps de réponse de l'une à l'autre (interrogation d'un périphérique, appel d'une page web par un script...), et d'autant plus que tout un tas d'actions se passent simultanément.

donc en principe ça s'arrange tout seul, mais ça peut être long

pour les périphériques solitaires, un truc est déjà de les décaler (polling), quand c'est possible, de quelques minutes : par exemple si vous avec des retours de température toutes les 30 minutes, ça ne changera pas grand chose d'en mettre à 28, d'autres à 29, 30, 31, 32 ... etc

pour les périphériques regroupée en parent/enfants, parfois ils se resynchronisent, c'est le cas par exemple pour un script qui va aller alimenter plusieurs périphériques avec des infos web :
une maintenance web ou une panne temporaire, ou une panne internet, une panne de courant, si ça dure plus que la durée du polling, au retour, tous les périphériques en question se retrouvent synchronisés et vont faire des appels tous en même temps...

Bon, c'est ch... parce qu'il n'y a rien d'automatisé mais voila comment vous pouvez les redécaler :

1- prenez en 1 dont vous savez que la valeur a changé (sinon, ça ne marche pas, vous ne verrez pas la nouvelle valeur avec le fameux "depuis 1,2,3... secondes")
config: passez le polling à 1 (et si on un appel avec cache avec une durée de cache paramétrable, le passer à 1 aussi, puis détachez le du parent (paramètres experts, rattacher à : aucun)
SAUVER : attendez la mise à jour, moins d'une minute donc et aussitôt, remettez les paramètres d'origine (polling, cache, rattachement)

2- attendez 1 ou 2 mn et refaites l'opération sur le suivant

Bon, ça serait bien que l'Eedomus sache faire ça toute seule non ?

NB : malheureusement, pas de solution pour les périphériques à pile dont le réglage de réveil n'est pas réinitialisable comme le Thermostat SRT321, mais comme dans ce cas, on ne les mets pas en service simultanément et qu'ils sont insensibles sur ce plan aux pannes de réseau, d'EDF... ils ne posent généralement pas de problèmes de ce genre.
thrymartin
 
Messages : 578
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Améliorer le polling (étaler les actions)

Messagepar clarinette49 » 16 Juil 2020 14:56

Pour ma part j'ai désactivé presque tous les pooling.
clarinette49
 
Messages : 438
Inscription : 21 Mai 2019
Localisation : Angers

Re: Améliorer le polling (étaler les actions)

Messagepar thrymartin » 16 Juil 2020 17:23

clarinette49 a écrit:Pour ma part j'ai désactivé presque tous les pooling.

?
thrymartin
 
Messages : 578
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Améliorer le polling (étaler les actions)

Messagepar rover820i » 18 Juil 2020 13:04

clarinette49 a écrit:Pour ma part j'ai désactivé presque tous les pooling.

Pareil, sauf pour les périphériques ne renvoyant pas leur changement de valeur, j'en ai 2 ou 3 comme ça, ils ont donc un polling assez court. Pour les autres, aucun intérêt.
rover820i
 
Messages : 3016
Inscription : 23 Juil 2016

Re: Améliorer le polling (étaler les actions)

Messagepar aurique » 18 Juil 2020 13:30

rover820i a écrit:Pareil, sauf pour les périphériques ne renvoyant pas leur changement de valeur, j'en ai 2 ou 3 comme ça, ils ont donc un polling assez court. Pour les autres, aucun intérêt.


Même chose.
aurique
 
Messages : 202
Inscription : 04 Déc 2015

Re: Améliorer le polling (étaler les actions)

Messagepar stef31 » 19 Juil 2020 05:26

Pareil. Le polling peut être source de problème avec le protocole Z-WAVE.
EEDOMUS V2 - RFX avec RTS
En attente de l'EEDOMUS V4
stef31
 
Messages : 2936
Inscription : 20 Août 2013
Localisation : 31

Re: Améliorer le polling (étaler les actions)

Messagepar thrymartin » 19 Juil 2020 05:43

Bon, alors on ne parle pas de la même chose : je ne parle pas du polling qui se trouve dans les paramètres avancés mais de la fréquence de requête et surtout du moment clé :

vous avez des périphériques et à chaque instant, la valeur est notée suivi d'un depuis ... x minutes
(heures, jours)

si vos périphériques vont aller demander la mise à jour tous en même temps, donc si vous avez en gros le même "depuis x ..." (avec des temps de mise a jour identiques, sinon, évidemment, ça va se décaler au prochain appel), alors vous imposez à la Box (et au reseau) une charge de travail instantanée alors qu'on devrait l'étaler

bon bref, je l'ai déjà détaillé au premier message.
donc le lire (mon premier message), et pas que le titre, (ou alors lire dans le titre ETALER LES ACTIONS) c'est vrai qu'il ya une confusion sur eedomus entre polling, frequence de requete et frequence de réveil (pour les appareils à pile), mais tout ceci revient au même, sauf le polling des paramètres avancés qui vient se rajouter à l'existant... (encore que pas toujours, un retour de température d'une sonde sur un module a bien besoin qu'on lui indique a quelle fréquence il doit renvoyer la température)

sorry

PS c'est d'autant plus problématique pour les plugins de passerelles qui regroupent donc leurs périphériques (netatmo etc), parce que si on a une interruption de service pour une cause X et qui dépasse l'intervalle d'appel, alors au retour, ils sont tous synchronisés... mais bon, tout ça je viens de le dire avant qu'on me réponde un peu à côté...

Rappel: j'avais posté 2 suggestions

- les "sauts" d'acquisition - pourquoi diable quand on a une fréquence de requête (je vais plus oser employer le mot polling), qui "saute", il faille attendre le prochain cycle ???
ça ça dépend de la programmation interne de l'Eedomus (bref, du staf) : ça doit pas être trop compliqué à améliorer ! => en clair : si la frequence est a 30' pourquoi attendre l'heure (2*30') quand l'acquisition "saute" ? l'Eedomus devrait toute seule réessayer une ou quelques minutes après, dans un temps ou elle n'est pas active par exemple (ou elle n'interroge pas de périphériques, ne communique pas avec le cloud...), bien entendu, Hors périphériques à pile qui eux ne sont pas joignables dans les intervalles entre 2 réveils, évidemment.

- les synchro d'appels, qui font que plusieurs périphériques demandent tous la mise a jour en même temps, sujet de la présente discussion / quand ça arrive, pas étonnant qu'on ai des "sauts" (mais qui peuvent se produire parceque l'Eedomus est en train de causer avec le cloud)
thrymartin
 
Messages : 578
Inscription : 03 Mars 2019
Localisation : La Réunion


Retour vers Suggestions

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 4 invité(s)