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
}

以下是其中两个选项的基本说明:

  • 池大小–要在池中维护的最小连接数。
  • {STR 1 } $Max溢出/<强>最大池^ {EM1}$溢出:EEM >池的大小。这不是池的最大大小。

池将允许的“休眠”连接总数为pool_size。 池将允许的同时连接总数为pool_size + max_overflow

作为一个例子,Heroku Postgres启动层中的数据库的最大连接限制为20。在这种情况下,您的pool_sizemax_overflow组合在一起时不应超过20。

查看正式的SQLAlchemy Connection Pooling文档,了解有关DATABASE_POOL_ARGS中定义的option的更多信息。

django 1.3支持

django postgrespool目前支持django 1.4及更高版本。有关1.3支持,请参见this ticket

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
运行ClassSpy java时发生反射错误   java Android ContextWrapper fileList()看不到我的文件   java使用JAXWS构建大型MTOM/XOP消息   eclipse如何使用ACM库(控制台程序)编写Java程序?   java m2eclipse插件搜索在配置为Nexus时不会给出结果   java Scanner只识别文本文件中的某些行,而不识别其他行   java如何从smartwatch启动活动或服务   java检查数组是否至少有两个具有特定值的元素   JAVA网URL编码器/解码器替代方案   Java中通过引用传递对象   spring如何在使用JavaJSON修补程序进行修补时禁止更新字段   使用java将海量数据存储到mysql的最佳方法   java字符串作为不可变对象   java我无法访问tomcat服务器(localhost),甚至无法访问mysql   java While循环条件未给出预期结果   java如何启动传递图像uri的新活动   Java中类定义在方法中的使用   Java程序在Ubuntu中运行我的另一个程序