Linux 服务器作为Nginx web服务器常见优化参数
内核参数调整cat /etc/sysctl.conf# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
fs.file-max = 999999
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.ip_local_port_range = 1024 61000
net.ipv4.tcp_rmem = 4096 32768 262142
net.ipv4.tcp_wmem = 4096 32768 262142
net.core.netdev_max_backlog = 8096
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn.backlog = 1024
file-max:这个参数表示进程(比如一个work进程)可同时打开最大句柄数,这个参数直接限制最大并发连接数,需要根据实际情况配置
tcp_tw_reuse:这个参数设置为1,表示允许将TIME-WAIT状态的socket重新用于新的tcp链接,这个对于服务器而言很有意义,因为服务器上总有大量的TIME-WAIT状态链接
tcp_keepalive_time : 这个参数表示当keepalive启用时,tcp发送keepalive消息的频度。默认2小时。若将其设置的小一些,可以更快清理无效的链接
fin_timeout: 这个参数表示当服务器主动关闭连接时,socket保持在FIN-WAIT-2状态的最大时间
max_tw_buckets: 这个参数表示操作系统允许TIME-WAIT套接字数量的最大值,如果超过这个数字,TIME-WAIT套接字将立刻清除并打印告警信息,该参数默认180000,过多的TIME-WAIT套接字会使服务器变慢
tcp_max_syn.backlog: 这个参数表示tcp三次握手建立阶段收到SYN请求队列的最大长度,默认1024.将其设置的大一些可以使出现Nginx繁忙来不及accept新连接的情况下,Linux不至于丢失客户端发起的连接请求
ip_local_port_range: 这个参数定义了在UDP和TCP连接中本地端口取值范围
net.ipv4.tcp_rmem:定义了TCP接收缓存(tcp接收滑动窗口)的最小值、默认值、最小值
net.ipv4.tcp_wmem : 定义了TCP发送缓存(tcp发送滑动窗口)的最小值、默认值、最小值
netdev_max_backlog: 当网卡接收数据包的速度大于内核处理的速度时,会有一个对列保存这些数据包。这个参数表示该对列的最大值
rmem_default: 这个参数表示内核套接字接收缓存区默认的大小
wmem_default :这个参数表示内核套接字发送缓存区默认的大小
rmam_max:这个参数表示内核套接字接收缓冲区的最大值
wmem_max:这个参数表示内核套接字发送缓冲区的最大值
注意:滑动窗口的大小与套接字缓存区会在一定程度上影响并发连接数目。每个TCP连接都会为维持TCP滑动窗口而消耗内存,这个窗口会根据服务器的处理速度收缩或扩张。参数wmem_max的设置,需要平衡物理内存大小、Nginx并发处理的最大连接数量(由Nginx。conf中的worker_processes和worker_connections参数决定)而确定。当然如果仅仅是为了提高并发量使服务器出现OutOf Memory 问题而去降低滑动窗口大小。那么并不合适,因为滑动窗口过小会影响大数据传输速率。所以rmem_default、wmem_default、rmam_max、wmam_max这4个参数的设置需要根据实际业务特性和实际硬件成本来综合考虑
tcp_syncookies: 该参数与性能无关,用于解决tcp的SYN攻击
Linux 服务器作为Nginx web服务器常见优化参数的更多相关文章
- linux篇之Nginx web服务器简单部署
一.安装部署nginx 1. 部署前先对nginx介绍下别嫌BB: 如果你听说或使用过Apache软件,那么很快就会熟悉Nginx软件,与Apache软件类似, Nginx(“engine x”)是一 ...
- 构建高效安全的Nginx Web服务器
一 为什么选择Nginx搭建Web服务器 Apache和Nginx是目前使用最火的两种Web服务器,Apache出现比Nginx早.Apache HTTP Server(简称Apache)是世界使用排 ...
- 20步打造最安全的NGINX WEB服务器
Nginx 是一个轻量级的,高性能的Web服务器以及反向代理和邮箱(IMAP/POP3)代理服务器.它运行在UNIX,GNU /linux,BSD 各种版本,Mac OS X,Solaris和Wind ...
- nginx web服务器的安装使用
nginx是一个web服务器(高性能web服务器),类似于apache服务器和iis服务器,由于nginx服务器具有轻量级高并发的特点,目前nginx的使用已经超越了apache. nginx介绍:n ...
- nginx web服务器概念了解 配置
服务器 服务器 服务器是一种提供高效计算的机器,与普通的PC主机相比,具有可观的稳定性,高并发性,可扩展性. 互联网任何一个应用都是以服务器为基础设施的,没有服务器我们就无法访问网络上的任何内容,只能 ...
- Linux下四款Web服务器压力测试工具(http_load、webbench、ab、siege)介绍
一.http_load程序非常小,解压后也不到100Khttp_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把 ...
- 烂泥:Windows下安装与配置Nginx web服务器
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 前几篇文章,我们使用nginx都是在linux环境下,今天由于工作的需要.需要在windows环境也使用nginx搭建web服务器. 下面记录下有关ng ...
- Nginx web 服务器 安装篇
Nginx介绍: 静态web服务器有Nginx .Apache .lighttpd等 目前国内用的最常见的就是Nginx 和Apache 是一个开源的.支持高性能.高并发的www服务和代理服务软件,N ...
- 在 Linux 中安装 Lighttpd Web 服务器
Lighttpd 是一款开源 Web 服务器软件.Lighttpd 安全快速,符合行业标准,适配性强并且针对高配置环境进行了优化.相对于其它的 Web 服务器而言,Lighttpd 占用内存更少:因其 ...
随机推荐
- day01_2spring3
Bean基于XML和基于注解的装配 一.Bean基于XML的装配 1.生命周期接着day01_1来讲(了解) Bean生命周期的如图所示:用红色框起来的都是我们要研究的! 如图Bean is Read ...
- 十分钟理解JavaScript引擎的执行机制
关注专栏写文章 十分钟理解JavaScript引擎的执行机制 方伟景 千锋前端开发推动市场提升的学习研究者. 4 人赞同了该文章 首先,请牢记2点: JS是单线程语言 JS的Event Loop是JS ...
- mysql数据库测试脚本
背景: 对mysql的底层代码进行了重构,需要回归测试mysql的基本功能 测试目标: 涵盖功能点如下 1.创建库,删除库,重命名库 2.创建表(需要涵盖所有基本的数据类型,主键,自增,默认值,不允许 ...
- php多版本使用composer
适用多版本的方法 1:下载composer.phar,官网有直接下载的链接,https://getcomposer.org/download/ 2:composer.phar 复制到项目根目录 3:p ...
- 题解【2.23考试T1】div
1. div[题目描述] 这是一道传统题,源代码的文件名为 div.cpp/c/pas. 给定一棵树,你要判断是否存在一条边,使得割掉这条边后,这棵树被分成了点数相等的两部分,并且如果存在,请你找到这 ...
- [Note]后缀自动机
后缀自动机 代码 #include <cstdio> #include <algorithm> #include <cstring> const int M = 1 ...
- xshell配置---文件上传命令rz和下载命令sz
1.下载安装包 方法一:手动下载安装 1)下载安装包:lrzsz-0.12.20.tar.gz 官网下载地址:http://www.ohse.de/uwe/releases/lrzsz-0.12.20 ...
- 各技能DBC参数
推荐你 通过 引擎的帮助文件查找标准魔法DB 下面是 部分hero引擎的标准魔法DB 34,解毒术,2,26,16,0,0,0,0,0,2,42,50,44,100,46,200,40,, 35,老 ...
- CentOS根目录下各目录介绍
bin :存放普通用户可执行的指令,即使在单用户模式下也能够执行处理 boot :开机引导目录,包括Linux内核文件与开机所需要的文件 dev :设备目录,所有的硬件设备及周边均放置在这个设备目录中 ...
- leetcode 72.编辑距离(dp)
链接:https://leetcode-cn.com/problems/edit-distance/submissions/ 设dp[i][j]表示串s1前i个字符变换成串s2前j个字符所需要的最小操 ...