la crade et rapide, quand l'exception est levée, je laisse glisser, et
les tweets qui n'ont pas pu être ajoutés à Evernote partent à la
poubelle
Pourquoi ne pas, dans le bloc catch, relancer la requete apres avoir laissé s'ecouler le temps imposé?
la complete, serait, quand l'exception est levée, de mettre les tweets
non traités, dans un cache (genre avec cache.set() de django) et à
l'execution suivante des données, je commence par lire le cache, que
je traite, puis passe aux tweets que je traite et si rebelote "limite
reached" je remets la suite dans le cache et ainsi de suite.
Mouais, ça me parait tenir la route.
Actuellement avec l'API de Evernote, je me mange des "rateLimite
reached" parce que je requete trop l'api en un très court lapse de
temps.
Un autre tuyau serait peut etre de jongler avec un celery, pr envoyer les requetes avec des intervalles, et eviter de saturer l'api sur laquelle tu tapes. J'ai aussi entendu dire que certaines API te disent le "pourquoi", et le "pendant combien de temps", lorsque tu reçois un ratelimit, ça peut t'aider a calibrer le temps entre chaque requete.
Le rate limit est en effet fonction de pas mal de choses. Une maniere d'avoir une legere influence dessus, est de limiter le nombre d'objets que tu recuperes en une fois, mais aussi, ne recuperer que les attributs de ces objets qui t'interessent, et pas le reste. Tu peux egalement verifier "s'il y a du nouveau", avant d'effectivement "recuperer", etc, ...