Forum Programmation.autre algorithme

Posté par .
Tags : aucun
1
19
nov.
2011

Bonjour,

Je me pose un problème d'algorithmie.

Soit un contenu qui change à une fréquence fixe.
Le programme peut consulter le contenu mais ne connait pas la fréquence de changement.
Quel algorithme permet, le plus efficacement, de déterminer la fréquence mais aussi la prochaine échéance ?

J'imagine qu'il faut définir efficacement, je dirai en minimisant le nombre de consultations.
Un programme bourrin consulterait à une fréquence très élevé et trouverait la fréquence au bout d'une période ou deux. Mais se ferai peut être bloquer par un mécanisme "anti-abuse".

Merci de vos lumières

  • # lire les metadonnées

    Posté par . Évalué à 2.

    y a surement l'info sur la mise à jour dans les metadonnées

    ou par dichotomie :
    tu chopes 2 mises à jours, tu en deduis en ecart (admettons 30 minutes)
    tu teste avec une periode /2 (15 minutes)
    ca te fais t0,t+15,t+30

    si t0 = t15 ou t15 = t30 c'est qu'il n'y a pas de changement en dessous de 15 minutes
    ainsi de suite.

    • [^] # Re: lire les metadonnées

      Posté par . Évalué à 3.

      Ton algorithme suppose que le contenu est unique à chaque instant. Il se peut très bien que le contenu ai changé mais par malchance tu obtienne deux même valeurs pendant tes rafraîchissements.

  • # expire

    Posté par (page perso) . Évalué à 3.

    Dans HTML par exemple, il y a un meta-tag expire cf. http://www.commentcamarche.net/contents/html/htmlmeta.php3

    Il « suffit » de ne prendre que l'entête pour savoir s'il faut demander tout le contenu (pour un cache par exemple).
    Il y a aussi une directive max-age décrite dans http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html

    C'est tout de même côté serveur qu'il vaut mieux fournir l'info si elle est disponible (en espérant que le client la conservera ou en tiendra compte).

  • # ça dépend (ça dépasse)

    Posté par (page perso) . Évalué à 2.

    Le seul algorithme efficace, c'est le faire au niveau de la modification du "contenu".

    Après c'est un problème de statistiques, et là... bein ça dépend de ton contenu et de ce que tu veux en réalité. Les données que tu donnes sont trop abstraites pour avoir un algorithme correspondant.

    • [^] # Re: ça dépend (ça dépasse)

      Posté par . Évalué à 5.

      Le seul algorithme efficace, c'est le faire au niveau de la modification du "contenu".

      Ça me fait rudement penser à :

      un strip XKCD sur le problème "Traveling Saleman problem" ou on suggère un algorithme O(1) : Vendre sur Ebay au lieu d'aller visiter les gens.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.