学习python中。
貌似python做web是执行一个daemon,那么是不是说连接数据库什么的资源不会像php那样被自动释放呢?那不就是会有一堆资源被占用?
del貌似也是在脚本之行结束后才会被执行啊。python应该怎么释放资源?
学习python中。
貌似python做web是执行一个daemon,那么是不是说连接数据库什么的资源不会像php那样被自动释放呢?那不就是会有一堆资源被占用?
del貌似也是在脚本之行结束后才会被执行啊。python应该怎么释放资源?
1
wy315700 May 29, 2015
什么框架
|
2
yahoo21cn May 29, 2015
一般来说数据库连接用完后要手动关闭,连接池也是。
|
3
binux May 29, 2015
为什么要释放?下一个请求来了接着用不就好了,还节约了连接的时间。
|
4
clino May 29, 2015
|
5
imlonghao May 29, 2015 via Android
数据库链接从来不断开...
|
6
cevincheung OP |
7
yahoo21cn May 29, 2015
每次用完关闭数据库连接和gc无关,搜索个python的数据库操作例子看看就行了。
|
8
Chichele May 29, 2015 via Android
析构函数在对象没有再被引用就执行了。
一般为了减少连接消耗,数据库连接都是保持全局的吧。 谷歌Python垃圾回收找不到讲解? |
9
cevincheung OP @tigerstudent
@yahoo21cn 那貌似就是说可能会存在web应用执行过程中如果数据库宕机了那必须要重启web daemon?因为当数据库宕机的时候web daemon的连接也断掉了(或者在程序里实现数据库断线重连?) |
10
yahoo21cn May 30, 2015 via Android
还真没试过,不过现在除了学习,一般都是直接上连接池的,连接池有重连机制,你不用操心这个
|
11
cevincheung OP @yahoo21cn 那连接池挂了咋办?
|
12
yahoo21cn May 30, 2015 via Android
连接池就是webserver本身
|