有关数据库连接两种方式的比较?????(高分求解)

joards 2002-07-02 09:09:47
一种是每到一个新页面,就连接一次数据库,完成操作。

另一种,是把数据库连接存放在一个session中,在使用的时候,调用 session 中的连接。

哪一种方式系统开销比较合理??

另:session 的个数对系统的性能会不会产生影响,影响有多大??
...全文
8 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
saucer 2002-07-03
imagine a lot of users visit your site, if you create a new connection for each user and put it in a session variable, can you afford it? as you might know, database connection resource is scarce
回复
hchxxzx 2002-07-03
我觉得放在一个文件里面,需要的时候插入进去(INCLUE),用完就关闭
放在SESSION里面,有没有想到过SESSION有时间限制?万一失效了,那岂不是乱套了?
回复
joards 2002-07-03
搞平均主义了,不好意思,多抱憾了,各位!!!
回复
zephyr_zhao 2002-07-02
而且如果用Application,那么会出现多个用户同时通过一个Connection访问数据库的情况,虽然节省了建立连接的时间,但是访问数据库的速度就会变得非常慢。

可以用OLE DB访问数据库,它会替你解决这个问题,OLE DB有一个Resource Pooling,它会代理你的连接请求,然后把别人刚用过的连接给你接着用。(具体机制不再阐述,其实我也没搞太明白,嘻嘻)
回复
zephyr_zhao 2002-07-02
很多书上是不建议把Connection放在Session或Application里的,开销比较大,而且和COM的多线程特性有关(本质原因没看懂:)
其实DB本身也有连接池的
如果特别在意性能的话,可以用MTS
常用的做法是把建立连接的那两局话放在一个文件里,以后用的时候包含近来,这样比较省事,呵呵
回复
siyou 2002-07-02
首先要讲,数据库连接怎可以包含在session中?你认为session里面可以打开连接吗?还不如直接写在网页中,搞什么变量,无聊
session开销最大的!
回复
liuzxit 2002-07-02
我喜歡用set application("dba")=conn
回复
yzflying 2002-07-02
application("connstr")=你的连接字符串

放在asa文件中
回复
zhenhao 2002-07-02
包含文件比较好。
回复
yun123789 2002-07-02
在session中保存大量数据会严重影响性能
回复
andysern 2002-07-02
应该是放在application 中吧,其实最好只在全局文件中,就是ASA文件中设置这个值,然后在需要的时候打开,就是APPLICATION_START,这样会比较方便,而且也不太会泄露文件的保密性的~
回复
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2002-07-02 09:09
社区公告
暂无公告