欢迎来到天天文库
浏览记录
ID:22353855
大小:36.50 KB
页数:5页
时间:2018-10-28
《linux性能调优基本策略》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、Linux性能调优基本策略设定关于ulimitulimit-a用来显示当前的各种用户进程限制。Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,设置各linux用户的最大进程数,下面我把某linux用户的最大进程数设为10000个:ulimit-u10000对于需要做许多socket连接并使它们处于打开状态的Java应用程序而言,最好通过使用ulimit-nxx修改每个进程可打开的文件数,缺省值是1024。ulimit-n4096将每个进程可以打开的文件数目加大到4096,缺省为1024其他建议设置成无限制(unlimited)的一些重要设置是:数据段
2、长度:ulimit-dunlimited最大内存大小:ulimit-munlimited堆栈大小:ulimit-sunlimitedCPU时间:ulimit-tunlimited虚拟内存:ulimit-vunlimited 暂时地,适用于通过ulimit命令登录shell会话期间。永久地,通过将一个相应的ulimit语句添加到由登录shell读取的文件中,即特定于shell的用户资源文件,如:1)、解除Linux系统的最大进程数和最大文件打开数限制: vi/etc/security/limits.conf #添加如下的行 *softnoproc11000 *har
3、dnoproc11000 *softnofile4100 *hardnofile4100 说明:*代表针对所有用户 noproc是代表最大进程数 nofile是代表最大文件打开数2)、让SSH接受Login程式的登入,方便在ssh客户端查看ulimit-a资源限制: a、vi/etc/ssh/sshd_config 把UserLogin的值改为yes,并把#注释去掉 b、重启sshd服务: /etc/init.d/sshdrestart3)、修改所有linux用户的环境变量文件:vi/etc/profileulimit-u10000u
4、limit-n4096ulimit-dunlimitedulimit-munlimitedulimit-sunlimitedulimit-tunlimitedulimit-vunlimited/**************************************有时候在程序里面需要打开多个文件,进行分析,系统一般默认数量是1024,(用ulimit-a可以看到)对于正常使用是够了,但是对于程序来讲,就太少了。修改2个文件。1./etc/security/limits.conf vi/etc/security/limits.conf 加上: *softnofile
5、8192 *hardnofile204802./etc/pam.d/login sessionrequired/lib/security/pam_limits.so********** 另外确保/etc/pam.d/system-auth文件有下面内容 sessionrequired/lib/security/$ISA/pam_limits.so 这一行确保系统会执行这个限制。***********3.一般用户的.bash_profile#ulimit-n1024重新登陆ok-------------对于solaris其实在系统里面有这样一个命令ulimit,以
6、下是ulimit-a执行的结果:time(seconds)unlimitedfile(blocks)unlimiteddata(kbytes)unlimitedstack(kbytes)8192coredump(blocks)unlimitednofiles(descriptors)1024memory(kbytes)unlimited其中nofiles就是文件描述符的变量值,该值受rlim_fd_cur这个参数的影响,可以用ulimit-nnumber命令来修改。但不管怎么改,程序仍然不能突破fd=256的限制。在SolarisTunableParametersReference
7、Manua这本书里面能查到以下的资料:A32-bitprogramusingstandardI/Oislimitedto256filedescriptors。A64-bitprogramusingstandardI/Ocanuseupto2billiondescriptors。这也就是说32位的程序是没有办法突破这个限制的,只有64位的程序才能使用高达2亿个文件描述符,SUN的软硬件在很早以前就实现了64位的架构,现在唯一要解决的就是将程序编译成64位程序,为了生成6
此文档下载收益归作者所有