使用gevent为django添加mysql连接池
django-mysql-geventpool的Python项目详细描述
django mysql geventpool
Django 2.0+的MySQL连接池后端使用gevent,仅支持Python3.4或更新版本。 它通过gevent与gunicorn异步工作者一起工作。
此实现基于django db geventpool(https://github.com/jneight/django-db-geventpool)。
安装
pip install django-mysql-geventpool
设置
将“django_mysql_geventpool”模块添加到已安装的应用程序中,如下所示:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_mysql_geventpool',
# ...other installed applications...
)
将Max的CONS添加到选项中,以允许数据库允许的最大连接数(默认值为4)
DATABASES = {
'default': {
'ENGINE': 'django_mysql_geventpool.backends.mysql',
'NAME': 'dbname',
'USER': 'dbuser',
'PASSWORD': 'dbpassword',
'HOST': 'dbhost',
'PORT': 'dbport',
'OPTIONS': {
'MAX_CONNS': 20,
'MAX_LIFETIME': 5 * 60 # connection lifetime in seconds, and if set 0, unlimited persistent connections if usable. default is 0.
}
}
}