博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
记一次linux服务器性能优化【分析篇】
阅读量:4199 次
发布时间:2019-05-26

本文共 1192 字,大约阅读时间需要 3 分钟。

前段时间服务器出现了一个奇怪的现象,一台配置不错的服务器,HP DL385 G7 (64G内存,2颗十二核CPU,连着一台存储)系统负载不规律的每过一段时间就非常高,高的时候维持在四五十,而这个时候呢,通过各种命令(top、vmstat、iostat、ifstat、sar)查看,各项资源都比较闲,一时间摸不着头脑。
 
    系统资源没问题,只能从服务着手了,这台服务器主要跑nis和nfs服务,nis服务只是提供网络用户,因为这个服务导致负载升高的可能性不高,首先就想到nfs了。
    首先介绍下服务器的环境,这台服务器通过nfs将存储上的数据共享给客户端服务器,开发人员在客户端服务器上工作,开发团队大概有100人。由于开发人员多,项目也多,完全有可能因为nfs服务的性能瓶颈影响系统性能。
    记得曾经跟红帽售后提过一个问题,大概是:我nfs服务器要接受好几台客户端服务器的挂载,而且研发人员也多,负载高的话,nfs服务会不会受不了。当时售后给我的答复是“没关系,只要把nfs进程数调大来就可以了”,如此淡定的回答让我信服了。不过这个时候我nfs服务器进程已经调到80个进程了,难道还不够?于是把进程数改到160个,重启nfs服务,观察了一段时间,服务器负载降下来了,到现在再也没出现类似负载高的情况。
    其实像这样规模的开发环境就不应该用一台服务器安装linux系统搭建nfs服务来共享文件,这样性能也不怎么好,而应该直接用一台中高端的存储设备,用存储自带的nfs共享功能,这样性能比系统搭建出来的nfs性能要好,这也是当初环境搭建方案的一个败笔。
调整nfs进程方法:
  1. [root@server2 ~]# vim /etc/init.d/nfs
  2. # Number of servers to be started by default
  3. [ -z "$RPCNFSDCOUNT" ] && RPCNFSDCOUNT=8
默认是8个进程,一般在生产服务器上,在系统资源够的情况下,可以按照一颗CPU 8个nfs进程来算,我24颗CPU 160个进程也比较合理。如果有某个系统资源成瓶颈的时候,就要适当减少nfs进程数,否则也有可能因为nfs进程过多导致负载升高。
    在网上有看到过一些帖子,有人问服务器CPU、内存、网络、IO都很闲,为什么负载居高不下呢,有个人回复到:“楼主服务器是不是跑的nfs服务?”,但是这个人没有回复怎么解决,也许他也遇到了类似的问题也没解决。我想说的是在查找性能瓶颈的时候,不能只盯着硬件资源看,有些服务本身也是存在瓶颈的,就像本文的问题,我觉得还是有不少人遇到的。
    本来想模拟问题和解决过程的,但是手头没有测试机,虚拟机测试不出来,以后有机会再发个测试篇吧。
http://blog.chinaunix.net/uid-26230811-id-3269445.html

转载地址:http://qiuli.baihongyu.com/

你可能感兴趣的文章
Launch Sublime Text 3 from the command line
查看>>
【数据库之mysql】mysql的安装(一)
查看>>
【数据库之mysql】 mysql 入门教程(二)
查看>>
【HTML5/CSS/JS】A list of Font Awesome icons and their CSS content values(一)
查看>>
【HTML5/CSS/JS】<br>与<p>标签区别(二)
查看>>
【HTML5/CSS/JS】开发跨平台应用工具的选择(三)
查看>>
【心灵鸡汤】Give it five minutes不要让一个好主意随风而去
查看>>
【React Native】Invariant Violation: Application AwesomeProject has not been registered
查看>>
【ReactNative】真机上无法调试 could not connect to development server
查看>>
【XCode 4.6】常用快捷键 特别是格式化代码ctrl+i
查看>>
【iOS游戏开发】icon那点事 之 实际应用(二)
查看>>
【iOS游戏开发】icon那点事 之 图标设计(三)
查看>>
【IOS游戏开发】之测试发布(Distribution)
查看>>
【IOS游戏开发】之IPA破解原理
查看>>
【一天一道LeetCode】#45. Jump Game II
查看>>
【一天一道LeetCode】#46. Permutations
查看>>
【一天一道LeetCode】#47. Permutations II
查看>>
【一天一道LeetCode】#48. Rotate Image
查看>>
【一天一道LeetCode】#56. Merge Intervals
查看>>
【一天一道LeetCode】#57. Insert Interval
查看>>