提高会计信息系统服务器性能的研究_第1页
提高会计信息系统服务器性能的研究_第2页
提高会计信息系统服务器性能的研究_第3页
提高会计信息系统服务器性能的研究_第4页
提高会计信息系统服务器性能的研究_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE4提高会计信息系统的数据服务器性能的研究广东省农业管理干部学院潘伟洪[摘要]随着会计信息化的发展,会计信息系统的集成程度越来越高,存储账套的数据库对数据服务器要求也越来越高。本文针对庞大的账套数据库对服务器造成的压力在既定的硬件条件下如何提高数据服务器性能做出了有益的探讨。在会计电算化教学过程中,以机代账的实操训练是必不可少的教学环节,也是会计信息化实现的具体形式。随着会计电算化向会计信息化过渡,会计信息系统的集成程度也越来越高,大型的后台数据库成为账套管理的主流支持技术,如SQLServer、Oracle等。一、问题的提出要教会学生以机代账,学生课堂作业就要完成一个或多个的会计业务循环,这意味学生的作业需要几周甚至更长的时间,再加上业务系统的训练,每个学生拥有多个实习帐套,因此,本人曾因教学需要,在一个会计信息系统服务器中建立了960个帐套数据库实体,即960个SQLServer数据库文件。在这庞大的账套数据库压力下,导致服务器的内存储器开销透支,客户访问请求的线程数和句柄数高居不下,CPU占用率长期为100%,服务响应长期处于等待状态,学生实训基本停止。二、分析和解决问题(一)主要原因出现在上述问题主要原因是单个服务器上增加的工作负荷使服务器性能明显下降造成的,所以,在既定的硬件条件下,如何提高服务器性能是既可节省成本又能解决问题的可靠途径。(二)影响SQLServer数据服务器性能的因素在SQLServer数据服务器安装过程中,默认状态只安装一个数据服务实例,在一个数据服务实例中管理过多的数据库实体时,SQLServer数据服务器性能就受到以下因素制约。1、内存的开销随着数据库的增多,支持大量存储过程所需要的内存也成倍地增加。对于SQLServer来说,需要更多的虚拟内存空间,以便为每个数据库上的每个过程编译执行计划,然后将该计划保存在过程高速缓存中。数据库的数量越多,所需的服务器过程高速缓存大小就越大。如果执行计划的数量超出了过程高速缓存能够存储的数量,系统将对计划执行重新进行编译,这将减少处理查询的吞吐量。当单个实例上的数据库数量从500增加至1000时,过程高速缓存中将没有足够的虚拟内存来保存内存中增加的所有查询执行计划。为了释放内存,以便为其他存储过程的计划腾出空间,系统会丢弃过程高速缓存中的某些执行计划,但是此操作要求在需要时重新编译这些被丢弃的存储过程计划。这样所造成的频繁的重新编译工作会影响工作负荷性能,服务器性能下降。2、CPU关系默认情况下,SQLServer数据服务实例的每个线程都被安排给了下一个可用的处理器。CPU关系掩码设置可以用来将实例限制在CPU的某个子集中,并且可以确保每个线程在各个中断间隔之间使用相同的处理器,而不用在多个处理器之间切换同一个线程,同时提高了二级高速缓存上的高速缓存命中率。但是,使用CPU关系设置时要小心,因为如果每个实例上的工作负荷不相等,不同CPU上的工作负荷就无法动态取得平衡。此时,若有源源不断的大量的数据访问请求线程和句柄,CPU的占用率就大幅上升,服务器性能就大幅下降。3、磁盘布局基于可恢复性的考虑,勿将日志文件和数据文件放在同一存储设备上。若将日志文件与数据文件放在相同的物理磁盘上,就不能分开日志文件上的顺序磁盘读写和数据文件上的随机磁盘读写。在大量反复的读写请求下,由于过多顺序磁盘读写和随机磁盘读写,使服务器的物理磁盘存储器速度下降,服务器性能也就下降。4、数据量可以说,数据库应用软件的瓶颈都在数据库,数据量的大小对系统的运行速度有直接的影响。在会计信息系统中,账套大小是衡量数据量大小的一个简单实用的标准。同样的功能,数据量越大其性能肯定会有所下降。在系统实施准备阶段应对用户未来的业务有一个估计,对用户数据量的估计可以作为配置服务器硬件的一个依据。数据量对数据库服务器的内存配置有直接的影响。5、并发数分布式处理的会计信息系统一般具有多层结构,其中客户端层的并发数量是影响系统性能的一个主要因素。客户端并发数对硬件配置的影响最大。根据经验结论,如果同时并发客户端超过20个就应该分离中间层和数据库服务器,对于中间层服务器保持每20个并发1个CPU,对于数据库服务器保持每10个客户端一个CPU。这些经验数字中的并发数量指同时不停使用的客户端的数量。并发量主要影响服务器CPU个数的配置。三、解决问题的办法和实现过程结合会计信息系统的功能和SQLServer服务器的特点,在支持多SQLServer服务实例的会计信息系统中,建立多SQLServer服务实例连接,可以解决问题,如金蝶K3的账套管理器,既可支持多SQLServer服务实例连接,也支持日志文件和数据文件分离存储。(一)解决问题的办法1、在SQLServer服务器安装多个实例使用多个实例可以增加每台服务器上的数据库数量和工作负荷能力。当数据库的数量和相应的工作负荷达到一定水平后,把多个SQLServer实例中的数据库分组是一个好办法,因为这样可以缓解内存压力。为每个实例的服务器过程高速缓存分配更多内存可以获得良好的性能,并能够提供更好的操作和安全隔离。测试表明,使用多个实例可以增加数据库的总数以及系统上产生的相应工作负荷能力,同时还能维护每个数据库的吞吐量。在多个实例上运行数据库可以留出更多的内存供过程高速缓存使用,因为每个实例具有自己的虚拟地址空间和过程高速缓存。当单个实例的数据库数量增至数千后,这些数据库对象会占用太多供过程高速缓存使用的内存空间,从而导致性能下降。过程高速缓存将被丢弃,然后进行重新编译。所以建议使用多个实例。的RAID5磁盘阵列、4个CPU并行,安装了4个数据服务实例,并指定每个服务实例的CPU,960个账套分布在4个不同的实例中运行,并成功分离了数据文件和日志文件物理存放,使用1GB的物理内存,并为每个实例配置最小内存并保持开放最大服务器内存。通过优化,服务器性能整体提升了40%,4个CPU占有率平衡而且稳定在60%左右,内存开销降低了40%。总之,通过优化,达到了在既定的硬件条件下,成功地提高了单个服务器的工作负荷能力的目的。作者简介:潘伟洪,硕士,主要研究领域:应用数学与计算机软件开发。长期从事会计电算化教学。联系电话:020-852

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论