Django的Postgres连接池。
django-postgrespool的Python项目详细描述
这是django 1.4+的一个简单的postgres连接池后端,由可爱漂亮的sqlalchemy提供支持。
用法
使用django postgrespool很简单,只需将django_postgrespool设置为连接引擎即可:
DATABASES = { 'default': { 'ENGINE': 'django_postgrespool'
如果您使用的是dj-database-url模块:
import dj_database_url DATABASES = {'default': dj_database_url.config(engine='django_postgrespool')}
如果您使用south:
SOUTH_DATABASE_ADAPTERS = { 'default': 'south.db.postgresql_psycopg2' }
一切都应该按预期进行。
安装
安装django postgrespool很简单,pip:
$ pip install django-postgrespool
配置
或者,您可以提供其他选项以传递给sqlalchemy的池创建:
DATABASE_POOL_ARGS = { 'max_overflow': 10, 'pool_size': 5, 'recycle': 300 }
以下是其中两个选项的基本说明:
- 池大小–要在池中维护的最小连接数。
池将允许的“休眠”连接总数为pool_size。 池将允许的同时连接总数为pool_size + max_overflow。
作为一个例子,Heroku Postgres启动层中的数据库的最大连接限制为20。在这种情况下,您的pool_size和max_overflow组合在一起时不应超过20。
查看正式的SQLAlchemy Connection Pooling文档,了解有关DATABASE_POOL_ARGS中定义的option的更多信息。
django 1.3支持
django postgrespool目前支持django 1.4及更高版本。有关1.3支持,请参见this ticket。