Modify

Ticket #31 (new enhancement)

Opened 4 years ago

Last modified 19 months ago

un demi problème, des idées de demi solution

Reported by: thaeron Owned by: thaeron
Priority: minor Milestone:
Component: modules Version:
Keywords: Cc:

Description

En continuant le module wikipedia je me suis aperçu que parfois le module se bloquait. J'ai cherché d'où ça venait et ça provient de gethostbyname() (dans le composant requete) qui est merveilleusement lent parfois.
En général gethostbyname() prend moins d'une seconde mais parfois ça peut aller a 5min.

C'est donc un problème, qui pourrait être résolu en mettant les ip au lieu des urls. Mais le nom de domaine change d'ip faudra MAJ le code & les modules donc c'est chiant.
Donc deuxième demi idée : on peut faire le gethostbyname() pendant l'init et utiliser l'ip ensuite.
Problème : faudra unload & reload le module pour mettre à jour l'ip.

Amélioration de la deuxième demi idée : faire un module qui serait une sorte de gethostbyname avec cache et qui mettrait à jour ponctuellement et surtout façon écartée dans le temps. (et peut-être le threader (si on arrive a une méthode de leak non cumulatif).

Attachments

Change History

comment:1 Changed 19 months ago by anonymous

gethostbyname() est bloquant.  c-ares est un resolver asynchrone qui resoudrais le probleme.  adns est une autre solution.

View

Add a comment

Modify Ticket

Action
as new
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.