服务器性能调优

好记忆不如烂笔头,能记下点东西,就记下点,有时间拿出来看看,也会发觉不一样的感受。

目录

一、概述

二、服务器参数调优

1.修改文件进程数

2.系统对该用户访问资源限制

3.用户打开文件数的软限制和硬限制

 4.内核TCP参数方面

 5.用户打开文件数的软限制和硬限制

6. 让配置生效

7.最终参数

一、概述

一般来说,考量一个系统的性能主要看这两个指标。而这两个指标之间又存在着一些联系:对于指定的系统来说,系统的吞吐量越大,处理的请求越多,服务器就越繁忙,响应速度就会慢下来;而延迟越低的系统,能够承载的吞吐量也相应的更高一些。一方面,我们需要提高系统的吞吐量,以便服务更多的用户,另一方面我们需要将延迟控制在合理的范围内,以保证服务质量。

衡量指标

  • 吞吐量(Throughput) 系统单位时间内处理任务的数量

  • 延迟(Latency) 系统对单个任务的平均响应时间

入正题,那么如何通过调试服务器的参数,来实现系统高吞吐,低延迟呐 ?

二、服务器参数调优

1.修改文件进程数

编辑文件/etc/sysctl.conf,系统进程所能打开的文件个数和单个进程所能打开的文件个数设置

#它是系统单个进程一共可以打开的文件数量,具体数值可以根据情况设置,默认值是:1024*1024 = 1048576
fs.nr_open = 1048576

#它是系统所有进程一共可以打开的文件数量,它是系统级别的,因此应该尽量将它调的大一些,这里将它修改为单个进程的100倍,这个已经非常大了
fs.file-max = 104857600 

重点:file-max是对所有进程(all processes)的限制,而nr_open是对单个进程(a process)的限制

2.系统对该用户访问资源限制

修改 /etc/pam.d/login 文件,在文件中添加如下信息:

session   required    /lib/security/pam_limits.so

描述:这是告诉Linux在用户完成系统登录后,应该调用pam_limits.so模块来设置系统对该用户可使用的各种资源数量的最大限制(包括用户可打开的最大文件数限制),而pam_limits.so模块就会从/etc/security/limits.conf文件中读取配置来设置这些限制值。修改完后保存此文件

3.用户打开文件数的软限制和硬限制

辑文件/etc/security/limits.conf,/etc/sysctl.conf,添加用户打开文件个数:

*      hard   nofile      65535
*      soft   nofile      65535

讲解:'*'号表示修改所有用户的限制;hard意为硬资源限制:一旦被superuser设置后不能增加;soft为软资源设置:设置后在程序运行期间可以增加,但不能超过hard的限制。程序读取的是soft,它是一个告警值。 nofile意为用户打开最大文件描述符数量,在Linux下运行的网络服务器程序,每个tcp连接都要占用一个文件描述符,一旦文件描述符耗尽,新的连接到来就会返回"Too many open files"这样的错误,为了提高并发数,需要提高这项配置的数值。

注意:nofile 的值一定不能高于 nr_open ,否则用户ssh登录不了系统,所以操作时务必小心

 4.内核TCP参数方面

Linux系统下,TCP连接断开后,会以TIME_WAIT状态保留一定的时间,然后才会释放端口。当并发请求过多的时候,就会产生大量的TIME_WAIT状态的连接,无法及时断开的话,会占用大量的端口资源和服务器资源。这个时候我们可以优

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值