二、服务器优化(3)服务器端优化措施

一、硬件

  如果条件允许,则尽可能使用性能更好的硬件设备。

1、CPU

  CPU 的选型原则,一般先看主频的高低,然后考虑二级缓存的大小。

  其次,注意 Windows 的电源选项。

093224918.png


2、内存

  原则上,内存越多越好。


3、磁盘

  磁盘是数据库系统的最大瓶颈。建议优先考虑 spindle ,再考虑 RAID。后文将有详细说明。


4、网卡

  网卡选型时往往将带宽作为第一要素。实际上更应该注意到,降低网络延迟不仅仅在于提高带宽,高性能的低延迟网卡有助于提高网络性能。

  Intel 是这样解释网络延迟的:

085215700.png


  根据Intel发布的案例,纽约证交所数据骨干网使用万兆以太网RDMA技术,可实现每秒18~46微秒的延迟,平均延迟为26微秒。http://ftps.zdnet.com.cn/files/3/21643.pdf



二、Server Core

  Server Core(服务器核心)是Windows Server 2008及后续版本提供的功能。它允许在服务器上安装极小的安装选项,从而为特定的服务提供一个可执行的、功能有限的、低维护的服务器环境,能有效地提高安全性和降低管理复杂度。Microsoft表示,Server Core可以实现最大程度的稳定性。关于 Windows Server Core 的安装,请参考《Windows 2008 服务器核心(Server Core)》 http://jimshu.blog.51cto.com/3171847/1091798

  为减少GUI 对操作系统和应用程序的影响,提升性能与稳定性,可以考虑将 SQL Server 安装在 Server Core 上。

  SQL Server 2012 的新特性之一,就是可以安装在 Server Core上。SQL Server 2012 之前的版本不支持 Server Core(实际上是Windows Server 2008不支持安装.Net Framework)。



三、消除应用软件的影响

  一般建议将某台服务器作为专门的数据库服务器,并且尽可能避免在这台服务器上安装其它应用软件。

  我在实践中曾经遇到以下3类软件对数据库产生严重影响。

1、防病毒软件

  其中一个案例,数据库反应非常慢,感觉像deadlock。最后竟然发生了蓝屏。经过对蓝屏dump文件进行分析,19#处理器当时有12380个work item在等待,而某防病毒软件的进程运行已超过5分钟仍处于pending状态(正常情况下应该是各个进程轮流使用处理器),导致阻塞。最后联系该软件的厂家,得知厂家已经建议不要在服务器上安装运行此进程。


2、第三方的备份软件

  其中一个案例,发现SQL Server性能持续下降的原因是内存不足。根据收集到的日志发现此问题的 tag: Ddk,总共 200MB 左右的非分页内存,Ddk 中占用了 167MB。通过命令 findstr /l /m Ddk C:\Windows\system32\drivers\*.sys ,找到 4 个驱动程序。其中一个为第三方的备份软件,停用该软件后恢复正常。


3、第三方的群集软件

  由于 Microsoft Cluster Server(MSCS)必须安装在 Windows Server 的 enterprise edition,因此有些客户使用了第三方的群集软件。

  其中一个案例,经过监视 Windows 计数器,发现 SQL Server 在访问磁盘时,磁盘I/O的读写速度被锁定在 8KB/s。



四、虚拟化

  对于数据库服务器而言,如果将数据库服务器进行虚拟化,应当注意资源(内存、CPU、磁盘I/O、网卡等)的竞争。

  其中最重要的是内存。VMware 是这样解释内存的:

091128641.png


  根据上图所示,这台虚拟机(也称客户机,Guest)的最大可用内存为 configured,reservation 是保留给这台虚拟机专用的(其中 Touched memory 是指已经被使用的内存)。当物理机的内存已经全部分配完毕,而其它虚拟机还需要更多的动态内存时,这台虚拟机就会释放 reservation 与 configured 之间的那部分动态内存(因此这部分称为 swappable),内存中的数据会被转移到磁盘上的 VM swap file 。

  由于 SQL Server 对内存非常敏感,特别是在从VM swap file 将内存数据重新加载到物理内存的时候会导致SQL Server出现短暂的“假死”状态,因此一般建议在虚拟化配置时将虚拟机设定为静态内存管理。

091629412.png

091642497.png


本文结语:

  服务器的优化措施包括硬件、软件、操作系统、虚拟化各方面的优化。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值