性能优化之内核调优

性能调优除了常见的程序层面、中间件层面与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

posted @ 2022-05-10 22:48  测试-知秋  阅读(149)  评论(0)    收藏  举报