Je reçois à un rythme extrêmement rapide, les tweets d'une connexion de longue durée au serveur de diffusion en streaming de l'API Twitter. Je procède en faisant un peu de traitement de texte lourd et enregistre les tweets dans ma base de données.Traitement des données de diffusion en grand volume avec Twisted ou en utilisant des threads, file d'attente en Python
J'utilise PyCurl pour la fonction de connexion et de rappel qui s'occupe du traitement de texte et de l'enregistrement dans la base de données. Voir ci-dessous mon approche qui ne fonctionne pas correctement.
Je ne suis pas familier avec la programmation réseau, je voudrais donc savoir: Comment utiliser Threads, Queue ou Twisted pour résoudre ce problème?
def process_tweet():
# do some heaving text processing
def open_stream_connection():
connect = pycurl.Curl()
connect.setopt(pycurl.URL, STREAMURL)
connect.setopt(pycurl.WRITEFUNCTION, process_tweet)
connect.setopt(pycurl.USERPWD, "%s:%s" % (TWITTER_USER, TWITTER_PASS))
connect.perform()
Définir 'extrêmement rapide' dans les messages par seconde, et élaborer sur' traitement lourd'. – MattH
également définir "ne fonctionne pas correctement" – nosklo
Upvoted pour le nom d'utilisateur. Désolé, ne peut pas l'aider: P –