python - 带有gevent的mongoengine,如何关闭/结束连接?

标签 python mongodb pymongo gevent mongoengine

当尝试在 gevent 进程中执行 MyApp.objects.get(foo=bar) 时,我得到 connection refused because too many open connections: 204 。在 models.py 中,我有 connect('my_db')。在我的脚本中,我执行了 gevent.monkey.patch_all()我已经看到了这个问题

pymongo + gevent: throw me a banana and just monkey_patch?

和这个问题

https://github.com/hmarr/mongoengine/issues/272

但我不明白如何访问连接以调用 end_request。我也试过这个补丁,但它对我没有帮助(除非我用错了)

https://gist.github.com/1184264

最佳答案

这似乎是使用 mongoengine 的方法(假设您有一个默认连接):

mongoengine.connection.get_connection('default').start_request()

mongoengine.connection.get_connection('default').end_request()

关于python - 带有gevent的mongoengine,如何关闭/结束连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7780365/

相关文章:

Python pickle 错误 : TypeError: object pickle not returning list. numpy 的问题?

python - 为什么解包元组会导致语法错误?

node.js - 指定数据库时出现 Auth failed 错误

Python 和 mongoDB 连接池(pymongo)

python - PyInstaller 与 Pymongo 的问题

python - 有没有办法使用 python 在 Pandas DataFrame 中使用行索引范围选择列的特定部分

python - Cloudwatch 事件没有触发我的 lambda 函数,即使它是一个目标

mongodb - 如何将MongoDB中每个单词的首字母大写?

php - 距离计算哪个更快 mongodb 或 mysql

python - 使用 pymongo 插入对象列表作为不同的 Mongo 文档