设某学校选课系统使用SQL Server 2008数据库管理系统,在学生选课期间,用户反映速度缓慢,大部分时间内,学生无法正常选课(选课学生近1万人)。经技术人员分析,发现速度缓慢的原因为数据库服务器响应缓慢。在选课期间,数据库服务器CPU使用率为100%

admin2016-10-10  33

问题 设某学校选课系统使用SQL Server 2008数据库管理系统,在学生选课期间,用户反映速度缓慢,大部分时间内,学生无法正常选课(选课学生近1万人)。经技术人员分析,发现速度缓慢的原因为数据库服务器响应缓慢。在选课期间,数据库服务器CPU使用率为100%,内存使用率95%,磁盘IO占用10%,网络带宽占用20%。在进一步分析后发现,学生在选课过程中需要在每次选定课程前校验相关课程的成绩信息,而校验成绩的SQL语句在业务不繁忙时仍需要1~2分钟才能执行完成。现有服务器硬件情况如下:
CPU:两颗英特尔至强处理器E5-2640 2.50GHz
内存:128GB,主频1600MHz
磁盘:6块600GB 15000转6Gbps SAS硬盘,RAID5
网卡:千兆网卡
为了保证系统稳定运行,现有如下优化方案:
(1)将CPU更换为两颗英特尔至强处理器E5-2690 2.90GHz。
(2)将内存提高到256GB,主频1600MHz。
(3)将磁盘更换为6块800GB读取密集型MLC 6Gpbs硬盘,保持RAID5。
(4)将网卡更换为万兆网卡。
(5)优化校验成绩SQL语句并建立相关索引,校验完成时间降低到1秒。
根据题目描述,请从是否能解决选课运行速度缓慢问题的角度逐个评价以上5个方案并给出原因。

选项

答案(1)提高CPU的主频,可以稍微缓解选课速度慢的问题。因为CPU主频提高,单位时间内处理的数据多一些,但不能根本解决服务器响应慢的问题。本题中的CPU在选课期间使用率达到100%,增加CPU的频率不能从根本解决问题。大量的SQL数据在网络上传输可能会导致网速变慢。 (2)内存提高,可以改善选课速度慢的问题,内存的增加可以从一定程度上提高数据处理的效率。本题中,选课期间内存使用率达到95%,说明内存没有完全使用,因此内存容量不是产生服务器响应慢的原因。 (3)SLC的特点是成本高、容量小、速度快,而MLC的特点是容量大、成本低,但是速度慢。因此替换原有的SLC硬盘不能提高数据存取的速度,不能解决选课运行速度慢的问题。 (4)更换网卡不能解决选课运行速度慢的问题,因为本题中网络带宽的使用率才20%,说明网络问题不是选课慢的主要原因。 (5)可以从根本上解决选课慢的问题。原有校验成绩的SQL语句需要1~2分钟才能执行完成,当大量的学生选课时,CPU和内存主要用于处理SQL语句,大量的资源被消耗,引起服务器反应减慢。本题中,SQL语句的效率低下,是产生服务器响应慢的根本原因,应当对SQL语句优化。一般来说,效率低下的SQL语句常常是系统效率不佳的主要原因。

解析
转载请注明原文地址:https://kaotiyun.com/show/lnlZ777K
0

最新回复(0)