性能优化之内核调优
性能调优除了常见的程序层面、中间件层面与SQL层面优化外,还有一种偏向服务器本身的优化,通常也叫内核优化。
今天主要介绍下常见的两种优化方式:
一、高并发服务器time_wait超时时间优化
操作系统默认240s后,才会关闭处于time_wait状态的连接。在高并发访问场景下,服务器端会因为处于time_wait的连接数过多,而无法建立新的连接,所有需要在服务器上调小此等待值。
调整方法:在Linux服务器上可通过变更/etc/sysctl.conf文件修改该默认值(s)
net.ipv4.tcp_fin_timeout=30
二、调大服务器所支持的最大文件句柄数,即fd(全称:FileDescriptor)
主流操作系统的设计是将TCP/UDP连接采用与文件一样的方式去管理,一个连接对应一个fd。主流的linux服务器默认支持的最大fd数量为1024,可以通过ulimit -a命令查看 open files字段。
当连接数大很容易应为fd不足而出现“open too many files”的错误,导致无法建立新的连接。
调整方法:
#修改文件:/etc/security/limits.conf,在文件中添加
#限制单个进程最大文件句柄数(到达此限制时系统报警)
* soft nofile 65536
#限制单个进程最大文件句柄数(到达此限制时系统报错)
* hard nofile 65536
#修改文件:/etc/sysctl.conf, 在文件中添加
#限制整个系统最大文件句柄数
fs.file-max=655350
本文来自博客园,作者:测试-知秋,转载请注明原文链接:https://www.cnblogs.com/blue-smile/p/16255810.html
浙公网安备 33010602011771号