请问:ASP中的库连接应该怎样建?

bhyzb 2001-09-27 01:00:55
在一个网站中,WEB服务器有一个后台库相连。具体在网页中,大致有这三种方式连接数据库。
1.不同的客户端共用一个连接。使用set Application("connect")=server.createobject("adodb.connection")
2.同一个客户端在访问不同的网页时共享一个连接。使用set Session("connect")=server.createobject("adodb.connection")
3.即便是同一个客户端在访问不同的网页时,都进行库的连接。set cnn=server.createobject("adodb.connection")
我想请大家来讨论一下它们在速度、效率、占用系统资源方面的优劣。主要是1 与2的对比。希望大家畅所欲言,尤其是用ASP作过网站的朋友。
...全文
86 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go_Rush 2001-10-03
  • 打赏
  • 举报
回复
哦,,我剛才有點筆誤

对于1:每一个用户有一个session("connect")连结数据库.这样,用户只要一访问你的网站
應改為:
对于2:每一个用户有一个session("connect")连结数据库.这样,用户只要一访问你的网站


當然要用3 ,現在一半不用 odbc連接了,,爲什麽不直接用 ole 直接相連呢?? 快多了
bhyzb 2001-10-03
  • 打赏
  • 举报
回复
到底哪个好呢,我现在糊涂了。Go_Rush(阿舜)的意见确有道理,1的连接虽然快,但容易断,但3每访问一次都要重建连接,要知道库的连接是很费时的,尤其是ODBC连接。这么说最好的方式是2。有没有别的意见?请快快阐述自己的观点呀
iamasp 2001-10-01
  • 打赏
  • 举报
回复
我建议采用1的方法。就是说,把它作为全局变量放在gloab.asa文件中。至于其中道理不说自明。也就是说一个应用建立一个数据库连接,这样可以节省系统资源。
Go_Rush 2001-09-30
  • 打赏
  • 举报
回复
这要看你的访问量了,,

如果你的访问量(同时对数据库的请求数)不大, 1.2是一个非常有效的方法,速度都比3要快

然而,当访问量大时1,2可以非常容易的使服务器挂掉..
原因是:
对于1:当有许多人同时访问数据库时,而数据库只有一个连接。 Application("connect")
服务器受不了,挂了
对于1:每一个用户有一个session("connect")连结数据库.这样,用户只要一访问你的网站
就会建立一个数据库连结,知道用户离开后,session超时后才释放..而其中不管这个用户有没有
访问数据库(如他一直在看一个静态页面*.htm),这个数据库连结都被占着,这个session都占着
内存,浪费资源啊. 用户一多,服务器必挂无疑.. 还有一个弊端,当session超时时,用户试图
访问数据库会出错
对于3:当然推荐3拉,这样可以使用数据库共享连接池,不怕人多,,你来一个,我接一个.呵呵
但是,写程序还是要注意资源的使用,如:不到万不得以不要轻易建立数据库连接,一旦访问数据库
完毕,立刻释放数据库资源

好了,不说了.至于1,2到底在什么时候会挂..那处决于以下方面:
1.同时对数据库的请求数
2.服务器的配置,如内存呀什么的
3.关键是你的程序是怎么写的
4.自己慢慢去琢磨把
bhyzb 2001-09-30
  • 打赏
  • 举报
回复
不一样吧,至少重新连接库是需要不少时间的。用session变量应该快一些,只是耗费了一定的资源而已,是吗?难道真的不值一提,没几个人过来说话,唉???
ksir 2001-09-27
  • 打赏
  • 举报
回复
哈哈
都一样
前2个只是把对象存入内存里供调用
后一个重建一个而已

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧