首页 > 数据库技术 > 详细

web.py释放数据库连接

时间:2015-09-13 21:44:20      阅读:296      评论:0      收藏:0      [点我收藏+]

参考:http://blog.sina.com.cn/s/blog_73951d180101eck0.html

webpy简单易用,而且非常轻量。尤其其操作数据库非常方便。

import web

db = web.database(dbn=DBN,host=HOST,db=DATABASE,user=USER,pw=PASSWORD, charset=CHARSET)
data = db.select([‘i_project‘],
                what=‘ p_class ‘,
                where=‘p_id = $PlatformBatchID‘,
                limit=‘1‘,
                vars=locals()
                )


但却不会主动释放连接,随着时间连接数会越来越多。

监控mysql连接数

 show full processlist;
 show status like ‘%conn%‘;


解决方法

1)安装DBUtils

1.0)安装

pip install DBUtils

1.2)使用

db = web.database(maxshared=5,mincached=1,maxcached=5,maxconnections=10,dbn=DBN,host=HOST,db=DATABASE,user=USER,pw=PASSWORD, charset=CHARSET)

 * mincached : 启动时开启的空连接数量(缺省值 0 意味着开始时不创建连接)

 * maxcached: 连接池使用的最多连接数量(缺省值 0 代表不限制连接池大小)

 * maxshared: 最大允许的共享连接数量(缺省值 0 代表所有连接都是专用的)如果达到了最大数量,被请求为共享的连接将会被共享使用。

 * maxconnections: 最大允许连接数量(缺省值 0 代表不限制)


2)主动释放连接数及cursor

finally:
        #close cursor
        self.db._db_cursor().close()
        #close connection
        self.db._db_cursor().connection.close()




web.py释放数据库连接

原文:http://my.oschina.net/u/2351685/blog/505623

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!