【发布时间】:2019-06-26 22:41:51
【问题描述】:
我有一个带有 MySQL 后端的 Django 应用程序,我想使用 MongoDB 来保存一些额外的(非关系)数据。我不想将MongoDB 与 Django 的 ORM 一起使用,只是简单的 PyMongo。我应该在哪里初始化PyMongo,以便让一个连接池在由 uwsgi 生成的所有 Python 进程之间共享?
我的 uwsgi 配置如下所示:
[uwsgi]
...
module = myapp.wsgi:application
virtualenv = /var/www/virtualenvs/myapp/
processes = 100
enable-threads = True
single-interpreter = True
uid = www-data
gid = www-data
vacuum = True
...
这将创建 100 个 python 进程,其中每个进程都有一个单独的 MongoClient 连接池,其中包含多个到 MongoDB 的连接。这是非常低效的。我怎样才能拥有一个在所有进程之间共享的连接池?
提前非常感谢!
【问题讨论】:
标签: python django mongodb pymongo uwsgi