架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10253|回复: 4

[linux] Linux(CentOS)之 ulimits 服务器性能调优

[复制链接]
发表于 2021-11-2 14:39:36 | 显示全部楼层 |阅读模式
在Linux下,我们使用ulimit -n 命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024

对于一般的应用来说(象Apache、系统进程)1024完全足够使用。但是如何象squid、mysql、java等单进程处理大量请求的应用来说就有 点捉襟见肘了。如果单个进程打开的文件句柄数量超过了系统定义的值,就会提到“too many files open”的错误提示。

查看系统设置的最大文件句柄数


QQ截图20211102142725.jpg

lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工具能够查看这个列表对系统监测以及排错将是很有帮助的。

安装命令如下:


统计系统中当前打开的总文件句柄数:


查看应用进程打开的文件句柄数量方法:


设置 ulimit

临时设置

其实 ulimit 命令身是分软限制和硬限制,加-H就是硬限制,加-S就是软限制。默认显示的是软限制,如果运行ulimit 命令修改时没有加上-H或-S,就是两个参数一起改变。

软限制和硬限制的区别?

硬限制就是实际的限制,而软限制是警告限制,它只会给出警告。

永久设置

ulimits 的数值永久生效,必须修改配置文件 /etc/security/limits.conf

(完)





上一篇:【转】Shell(Bash)中如何判断是否存在某个命令
下一篇:Linux chown 修改文件夹所属用户名和用户组
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-11-8 11:43:39 | 显示全部楼层
升级版命令

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-11-10 15:36:29 | 显示全部楼层
第一列是打开的句柄数,第二列是进程ID


统计多个程序打开的文件信息

查看进程打开的连接

QQ截图20211110153552.jpg

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-12-19 09:51:33 | 显示全部楼层
阿里云调优 install_set_ulimit.sh 文件



码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2022-5-28 21:15:34 | 显示全部楼层
阿里云调优 install_set_sysctl.sh 文件

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-24 04:55

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表