2016-10-16 8 views
-1

tweepyライブラリを使用してtwitter streaming APIからつぶやきを集め、Elasticsearchサーバーに保存します。全体的に、私は単純なDjango applicationを書いて、地図上でリアルタイムでつぶやきを表示します。しかし、そのためには、ElasticSearchデータベースをDjango Serverによって常にリアルタイムで実装する必要があります。つまり、Django Serverが起動するとすぐに実行することが好ましいはずです。それについては何が良い方法でしょうか?djangoで非同期関数を起動するのに最適な方法は?

呼び出しがfollowinのようになり:

celery-haystackと一緒に使う celery
streamer = tweepy.Stream(twitter_api.auth, listener=stream_listener) 
streamer.filter(locations=[-180, -90, 180, 90], languages=['en'], async=True) 

答えて

0

(うまくいけば、あなたはすでにElasticsearchと対話するdjango-haystackを使用しています)。それはまっすぐ前方の解決策ではありませんが、何らかの努力で最善の解決策です。

0

私はスーパーバイザ+ custom django commandを使用します。コマンドの中で、その非同期関数をいつ実行するかを決めます。

関連する問題