有关于User Connection对性能的影响的几点建议

SQL Server的User Connection确实会占用资源,这一点没有问题。 然而,根据我们的经验,User Connection过多并不会直接导致SQL Server的性能问题。(SQL Server曾出现过一个已知问题,确实是由于多个连接导致,然而这个已经SQL Server 2005 SP3中修复了,参考http://support.microsoft.com/kb/937745/EN

因为很多User Connection都处于sleeping的状态,是不占用SQL Server的线程的. 根据我们的情况这种连接并不会造成性能问题.

然而,如果Connection是active connection,比如这个connection正在运行,或者虽然没有执行语句,但是transaction没有COMMIT,这两种都会占用工作线程。占用工作线程才是占用了主要的资源,除了working thread以外,这种连接还会占用锁资源从而会引起对其他连接的阻塞,导致性能问题。这种才是我们所日常关注的。

select spid, kpid, open_tran, status, * from sys.sysprocesses

1)如果kpid为0,说明是不占用线程的,如果是kpid不为0,说明是占用线程的。如果我们发现kpid不为0的有很多个(spid<50的为系统进程,不予考虑),那说明多个连接可能会引起性能问题。

2)open_tran如果不为0,说明有未COMMIT的transaction会占用锁资源,这种连接可能会引起其他的连接的阻塞

3)您还可以检查status,你会发现kpid为0的都是sleeping的。

综上所述,直接设置User Connections并不能直接规避性能问题,也不能直接解决性能问题。相反,User Connection设置了上限,相当于把性能问题转化成了连接问题。后果是虽然用户连接少了,工作负载小从而SQL没有性能问题,但是您会发现有更多的连接失败出现。这并不是您所希望的。

4. 对于User Connection的建议

如果您是出于防止网络攻击,或者网络方面的其他考虑,可以考虑将User Connection设置成一定的值。如果出于性能的考虑,直接设置User Connection是一个治标不治本的办法,并不推荐。从连接角度考虑性能问题的话,您更需要关注的是有没有连接造成了其他连接的阻塞。

时间: 2024-08-01 02:52:46

有关于User Connection对性能的影响的几点建议的相关文章

HTTP的持久连接对Web服务性能的影响

我们的 Web 页面通常有很多对像(Object)组成.如:jss 样式表.图片.scripts.文档等.所以用户浏览一个网页文件时候,要向 Web 服务器发送多次请求(要从服务器上获取一个Object就要向服务器发送一个请求),浏览器根据 jss 样式表把从服务器获取的这些html页面对象合成一个完整的html页面展示给用户.        最早我们的浏览器是单线程的,意味着一次只能向浏览器发送一个Object请求,等到该Object传输完成了,再向服务发送第二个Object的请求.我们把它称

smarty对网页性能的影响--开启opcache

在上一篇<smarty对网页性能的影响>中,默认没有开启opcache,于是我安装了一下zend opcache扩展,重新实验了一下,结果如下: 有smarty 用apache的ab命令进行压力测试,并发10个,不算大:同时用sar命令进行cpu利用率的统计.命令如下: ./ab -c 10 -n 100000 http://cq01-rdqa-dev072.cq01.baidu.com:8008/index.php sar -u 2 1000 >/tmp/smarty.sar &

京东如何处理数据中心网络对应用性能的影响

?随着现代数据中心规模的不断扩张,网络拓扑和路由转发变得越来越复杂.传统的数据中心使用大型机和小型机,网络规模相对较小,普通的机框式交换机就能满足网络的需求.随着CLOS集群架构的普及,标准的x86服务器集群以低成本和高扩展性逐渐取代大型机和小型机而成为数据中心的主流. 下图就是一个典型的基于CLOS架构的数据中心解决方案,在这样的大规模网络中,如何让数据在传输过程中能以最快的速度从发送端到接收端,成为网络性能调优的关键因素. 京东IT资源服务部举办的未来数据中心核心技术研讨会上,京东人工智能,

浅谈 js 下 with 对性能的影响

这几天多次看到有博主们在写 with 的文章,这货确实非常方便,但是却是个性能杀手,所以一直都是上不得台面的.那么他究竟会让效率低下到什么程度呢?先来看下 with 是如何的便捷吧.. // 正常调用 console.log(location.host); console.log(location.pathname); // 在 with 下 with (location) { console.log(host); console.log(pathname); } 如果不影响性能,确实是非常霸气

SQL Server中多表连接时驱动顺序对性能的影响

原文:SQL Server中多表连接时驱动顺序对性能的影响 本文出处:http://www.cnblogs.com/wy123/p/7106861.html (保留出处并非什么原创作品权利,本人拙作还远远达不到,仅仅是为了链接到原文,因为后续对可能存在的一些错误进行修正或补充,无他) 最近在SQL Server中多次遇到开发人员提交过来的有性能问题的SQL,其表面的原因是表之间去的驱动顺序造成的性能问题,具体表现在(已排除其他因素影响的情况下),存储过程偶发性的执行时间超出预期,甚至在调试的时候

软件对存储性能的影响&#8203;

存储系统的核心是软件,在磁盘存储时代,存储系统软件设计的好坏似乎对性能的影响并不是很大,很多存储软件的设计并不会去考虑计算机的体系架构,也不用去关心操作系统调度.内存拷贝等因素带来的性能影响.对于磁盘存储,事情的确是这样的,原因在于磁盘的性能远远低于CPU处理和访存性能.磁盘存储的性能瓶颈点就在于磁盘本身,因此过多的体系结构级别.竞争资源同步的优化,不会对存储性能带来显著优化. 在很久以前做过这方面的实践,当时觉得临界区的资源竞争会对IO性能造成影响,因此,对我们做的一套存储虚拟化系统进行锁资源

JAVA 异常对于性能的影响

陶炳哲 - MAY 12, 2015 在对OneAPM的客户做技术支持时,我们常常会看到很多客户根本没意识到的异常.在消除了这些异常之后,代码运行速度与以前相比大幅提升.这让我们产生一种猜测,就是在代码里面使用异常会带来显著的性能开销.因为异常是错误情况处理的重要组成部分,摒弃是不太可能的,所以我们需要衡量异常处理对于性能影响,我们可以通过一个实验看看异常处理的对于性能的影响. 实验 我的实验基于一段随机抛出异常的简单代码.从科学的角度,这并非完全准确的测量,同时我也并不了解HotSpot 编译

C++ 性能剖析 (四):Inheritance 对性能的影响

(这个editor今天有毛病,把我的format全搞乱了,抱歉!) Inheritance 是OOP 的一个重要特征.虽然业界有许多同行不喜欢inheritance,但是正确地使用inheritance是一个应用层面和架构层面的重要设计决定. 大量使用inheritance,尤其在类似std container 中使用,会对程序性能产生何等影响呢? 从我个人的经验来看,constructor对创建具有深层inheritance链的class,有很大的影响. 如果应用容许,最好使用没有constr

sql语句查询条件的不同表达方式对查询性能的影响

今天操作数据库遇到一个问题 目标表RA_AD_DAILY_DATA的数据量大概有5千万左右,其中的BUSINESS_DATE字段为日期类型 我要查询8月20号导入的三条记录,刚开始用这种方式去查: SELECT * FROM RA_AD_DAILY_DATA WHERE  to_char(BUSINESS_DATE,'yyyy-MM-dd')= '2014-08-20' ; 速度非常慢,五分钟左右才能出来结果(在PL/SQL developer中) 同样都是查询2014年8月20日的数据,换一种