2016-10-16 2 views
-1

Я использую библиотеку tweepy для сбора твитов от twitter streaming API и храните их на сервере Elasticsearch. В целом я пишу простой Django application, чтобы отображать твиты в реальном времени, по карте. Однако для этого мне нужна база данных ElasticSearch, которая будет заполняться в реальном времени, постоянно с помощью сервера Django, поэтому лучше начинать делать это, как только запускается сервер Django. Каким будет хороший способ?Лучший способ запустить асинхронную функцию в django?

Призывы выглядеть followin:

streamer = tweepy.Stream(twitter_api.auth, listener=stream_listener) 
streamer.filter(locations=[-180, -90, 180, 90], languages=['en'], async=True) 

ответ

0

Использование celery вместе с celery-haystack (надеюсь, вы уже используете django-haystack взаимодействовать с Elasticsearch). Это не прямое решение, но с некоторыми усилиями это лучшее решение.

0

Я использую диспетчер + custom django command. Внутри команды вы решаете, когда запускать эту асинхронную функцию.

Смежные вопросы