2010微软技术大会学习笔记(一)

上一篇 / 下一篇  2010-12-07 16:09:16 / 个人分类:数据库

sqlserver性能优化:

1、性能优化要考虑ROI,即投资回报率,因为优化无止境,切忌追求完美和不计成本的性能优化
2、CPU利用率高并不代表性能存在问题,因为很多性能很好的系统通常在CPU利用很高的情况下有很强劲的运算速度,较高的CPU使用率通常代表资源的充分利用,升级硬件往往对于性能提升会更明显
3、数据库阻塞不等于数据库死锁,两个连接陷入死锁时,其中一个连接被选作死锁牺牲品;该连接的事务回滚,同时应用程序收到错误,当一个连接控制了一个锁,而另一个连接需要冲突的锁类型时,将发生阻塞。其结果是强制第二个连接等待,或在第一个连接上阻塞;阻塞是由于锁机制,所以锁机制是一把双刃剑
4、性能优化要分阶段优化,是一个迭代过程,从软件的设计期开始
5、对于高CPU占有率的工作负载而言,其最佳并发数就是CPU(或者是CPU里的核)的数目。然而,进程不总是可以运行的,因为它们会执行阻塞式调用,比如I/O、数据库查询和网络请求等。因此,最佳并发数往往会多于CPU数目
6、日志文件通常比较耗用系统资源,所以应该对其进行一个控制
7、内存的压力可以导致I/O瓶颈
8、一些hash、排序算法等都会影响到内存的使用
9、缩短等待时间是数据库性能优化的一个很重要的点,出现等待通过代表系统资源不够用
10、导致数据库性能出现问题通常的有重编译、游标的不良使用、不好的查询机制等等

 


TAG:

 

评分:0

我来说两句

Open Toolbar