服务器配置哪些参数(服务器调制)

几乎所有的内核模块,包括内核核心模块和驱动程序,都在/proc/sys文件系统下提供了某些配置玩文件以供用户调整模块的属性和行为。通常一个配置文件对应一个内核参数,文件名就是参数的名字,文件的内容是参数的值。我们可以通过如下命令查看所有这些内核参数:/proc/sys/fs目录下的部分文件/proc/sys/fs目录下的内核参数都与文件系统相关。对于服务器程序来说,其中最重要的是如下两个参数/proc/sys/fs/fs-max,系统级文件描述符数限制。直接修改这个参数和永久修改的方法在之前的文章中以及讨论过。一般修改/proc/sys/fs/file-max后,应用程序需要把/proc/sys/fs/inode-max设置为新/proc/sys/fs/file-max值的3~4倍,否则可能导致i节点数不够用(但2.6已经废弃)。/proc/sys/fs/epoll/max-user-watchers,一个用户能够往epoll内核事件表中注册的事件的总量。它是指该用户打开的所有epoll实例总共能监听的事件数目,而不是单个epoll实例能监听的事件数目。往epoll内核事件表中注册一个事件,在32位系统上大概消耗90字节的内核空间,在64位系统上则消耗160字节的内核空间。所以,这个内核参数限制了epoll使用的内核内存的总量。/proc/sys/net目录下的部分文件内核中网络模块的相关参数都位于/proc/sys/net目录下。其中和TCP/IP协议相关的参数主要位于如下三个子目录中:coreipv4ipv6这里总结一下和服务器性能相关的部分参数。/proc/sys/net/core/somaxconn,指定listen队列里,能够建立完整连接从而进入ESTABLISHED状态的socket的最大数目。/proc/sys/net/ipv4/tcp_max_syn_backlog,指定listen监听队列里,能够转义至ESTABLISHED或者SYN_RCVD状态的socket的最大数目。/proc/sys/net/ipv4/tcp_rmem,它包含三个值,分别指定一个socket的TCP读缓冲区的最小值、默认值和最大值。/proc/sys/net/ipv4/tcp_syncookies,指定是否打开TCP同步标签(syncookies)。同步标签通过启动cookie来防止一个监听socket因不停地重复接收来自同一个地址的连接请求(同步报文段),而导致listen监听队列溢出(所谓的SYN风暴)。除了通过直接修改文件的方式来修改这些系统参数外,我们也可以使用sysctl命令来修改它们。这两种修改方式都是临时的。永久的修改方法是在/etc/sysctl.conf文件中加入相应网络参数及其数值,并执行sysctl -p使之生效,就像之前文章中就该系统最大允许打开的文件描述符那样。

本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://kuaisubeian.cc/34024.html

kuaisubeian