连接池与SQL Server 2000 Analysis Services
2006-08-05 09:16:35 来源:WEB开发网鉴于 IIS 线程管理的特性,当您创建基于 Web 的应用程序时,在 Active Server Pages (ASP) Web 应用程序中使用 ADOConPool 和 OLEDBConPool 连接池对象时应该特别小心。IIS 检查每个 COM 组件以确定其灵活性(COM 组件的线程处理和封送处理能力)。XML for Analysis Provider 支持自由线程模块,但并不提供自由线程封送拆收器 (FTM)。正是由于这个原因,IIS 5.0 或更高版本认为 XML for Analysis Provider 并不灵活。
这意味着如果使用 IIS 5.0 或更高版本的默认设置,ADOConPool 和 OLEDBConPool 对象在缓存于 ASP 应用程序的应用程序或会话作用域中(换句话说,缓存于 ASP Application 或 Session 对象变量中)时将使用系统安全性上下文。请求和返回连接中介绍的模拟机制将无法正常工作。连接池对象在试图验证所有活动连接时将使用默认的 IIS 用户,而不是当前连接的用户。
为了纠正这一错误,请将 IIS 5.0 或更高版本的配置数据库中的 ASPTrackThreadingModel 设置更改为 True。更改此设置是为了防止 IIS 检查 COM 组件的灵活性,但是,由于要进行封送处理和序列化,这会导致性能的降低,因此应该只在包含 Web 应用程序的虚拟目录或 Web 目录中更改此设置。
平衡和收缩连接池
连接池中包含的连接数目没有严格的限制,因为已将基础管理机制设计为无阻碍机制,即客户端应用程序在请求连接时应该都能获得连接。正是由于无阻碍的特点,两个对象才能使用相同的被动技术来管理连接。
不过,也可以使用两种不同的技术来管理连接池:“平衡”和“收缩”。
平衡连接池
每当将连接返回到连接池(ADOConPool 对象使用 ReturnConnection 方法,而 OLEDBConPool 对象使用 ReturnSession 方法)时,都会用到平衡技术。连接池对象将把活动连接(已用连接和可用连接)的总数与 MaxSessions 属性值进行比较,以确定是否有必要平衡连接池。如果活动连接的总数大于 MaxSessions 属性值,则需要进行平衡。
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
赞助商链接