2011-06-23 14 views
1

私はCeleryを使用してフィードをダウンロードし、画像のサイズを変更しています。フィードと画像パスは、mongoengineを使用してMongoDBに保存されます。タスクを実行した後に現在の接続(db.serverStatus()["connections"])を確認すると、シャットダウン時にcelerydが終了するまで開いたままの状態で、50-80の "現在の"接続があります。誰もがこの問題を経験しているか、それとも解決するために私ができることを知っていますか?Celeryを使用しているときに開いているmongoDBの接続が多すぎます

おかげで、 Kenzic

+0

これはセロリの問題にはならないと思いますが、最終的にはあなたがあなたのタスクに書いたコードに依存しています。注意して確認してください。問題を解決できると確信しています。 –

答えて

3

これはただのMongoDBサーバへのオープン50〜80の接続があることを意味し、心配する必要はありません。 PyMongo(したがってMongoEngine)は内部接続プール(つまりソケット)をmongodに維持しているので、何も起こっていなくても(アクティブなクエリやコマンドなどはない)、接続は次回のためにデータベースに対してオープンのままです利用される。デフォルトでは、PyMongoはConnectionオブジェクトごとに10以上のオープン接続を保持しようとします。

開いている接続の数に問題がありますか?

+0

私はPyMongoを初めて使ったので、特に問題はありませんが、私はその番号に気を配っていました。応答してくれてありがとう、それは助けになった! – Kenzic

関連する問題