针对nginx-调整系统参数

优化nginx服务器内核TCP参数,简单整理,很多参数可以放到nginx配置文件中调整

vi /etc/sysctl.conf

在最后添加如下内容:

net.ipv4.tcp_max_tw_buckets = 6000

net.ipv4.ip_local_port_range = 2048 65000

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_syncookies = 1

net.core.somaxconn = 262144

net.core.netdev_max_backlog = 262144

net.ipv4.tcp_max_orphans = 252144

net.ipv4.tcp_max_syn_backlog = 252144

net.ipv4.tcp_timestamps = 0

net.ipv4.tcp_synack_retries = 1

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_fin_timeout = 1

net.ipv4.tcp_keepalive_time = 30

保存并输入sysctl -p使设置生效

解释:

net.ipv4.tcp_max_tw_buckets

设置timewait的值

net.ipv4.ip_local_poet_range

设置允许系统打开的端口范围

net.ipv4.tcp_tw_recycle

设置是否启用timewait快速回收

net.ipv4.tcp_tw_reuse

设置是否开启重新使用,即允许将TIME-WAIT sockets 重新用于新的TCP链接

net.ipv4.tcp_syncookies

是否开启SYN cookies,如果启用该功能,当出现SYN等待队列溢出时,使用cookies来处理

net.core.somaxconn

web应用中listen函数的backlog默认会将内核参数的net.core.somaxconn限制到128,而nginx定义的NGX_LISTEN_BACKLOG默认是511,所以必须调整

net.core.netdev_max_backlog

该参数用于设置被传送到队列数据包的最大数目

net.ipv4.tcp_max_orphans

该参数用于设置linux能够处理不属于任何进程的套接字数量的大小

net.ipv4.tcp_max_syn_backlog

该参数用于记录尚未被客户端确认信息的链接请求的最大值

net.ipv4.tcp_timestamps

该参数用于设置使用时间戳作为序列号,在高并发环境下,开启该功能会出现异常,因此要关闭  www.2cto.com

net.ipv4.tcp_synack_retries

该参数用于设置SYN重试次数

net.ipv4.tcp_syn_retries

该参数用于设置在内核放起建立链接之前发送SYN包的数量

net.ipv4.tcp_fin_timeout

表示如果套接字有本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间

net.ipv4.tcp_keepalive_time

当启用keepalive的时候,该参数用于设置TCP发送keepalive消息的频度

参考

http://www.2cto.com/os/201212/176741.html

时间: 2024-11-05 12:22:04

针对nginx-调整系统参数的相关文章

一份针对nginx的内核优化参数

首先,需要修改/etc/sysctl.conf来更改内核参数.例如,最常用的配置: # ·file-max:这个参数表示进程(比如一个worker进程)可以同时打开的最大句柄数,这个参数直接限制最大并发连接数,需根据实际情况配置. fs.file-max = 999999 # ·tcp_tw_reuse:这个参数设置为1,表示允许将TIME-WAIT状态的socket重新用于新的TCP连接,这对于服务器来说很有意义,因为服务器上总会有大量TIME-WAIT状态的连接. net.ipv4.tcp_

NGINX压力测试

Nginx可以作为HTTP服务器和反向代理服务器.反向代理服务器取决于后端服务器的性能,这次只针对HTTP服务器做性能测试.Nginx作为服务器对于网络的性能必然是非常依赖的,尤其是PPS转发能力,那么网络增强型实例必然是首选. 在 10G 网络带宽下,推荐独享实例规格族如下:规格族 ecs.sn1ne(Nginx 对内存要求不高,不需要规格族ecs.sn2ne): 在 25G 网络带宽下,推荐实例规格族: 规格族 C5. 测试验证 测试方法 操作系统:Centos 7.3 (默认打开irqba

Nginx 工作原理和优化、漏洞

1.  Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作. Nginx的模块从结构上分为核心模块.基础模块和第三方模块: 核心模块:HTTP模块.EVENT模块和MAIL模块 基础模块:HTTP Access模块.HTTP F

Nginx工作原理和优化、漏洞(转)

查看安装了哪些模块命令: [[email protected] xcache]# nginx/sbin/nginx -Vnginx version: nginx/1.2.3built by gcc 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) TLS SNI support enabledconfigure arguments: --prefix=/opt/xcache/nginx --with-ipv6 --with-http_ssl_module --with

Nginx服务器报 "Too Many Open Files"

近日服务器上的运行的一个站点经常性出现500错误.查了下服务器负载,负载正常.而后查询了下nginx记录的站点运行错误日志,发现提示Too many open files.因为站点静态文件居多,而且http请求结束后,打开的文件描述符会被自动关闭,所以程序中应当不存在没有关闭文件描述符的情况.猜测就是系统方面的问题了. 我们知道系统每打开一个文件,都会占用一个文件描述符,而系统打开文件描述符是有上限的.在centos下默认值一般为1024,可以通过命令查看: $ ulimit -n 那么如何修改

Nginx工作原理和优化、漏洞

1.  Nginx的模块与工作原理 第三方模块:HTTP Upstream Request Hash模块.Notice模块和HTTP Access Key模块. 图1-1展示了Nginx模块常规的HTTP请求和响应的过程. Nginx 本身做的工作实际很少,当它接到一个HTTP请求时,它仅仅是通过查找配置文件将此次请求映射到一个location block,而此location中所配置的各个指令则会启动不同的模块去完成工作,因此模块可以看做Nginx真正的劳动工作者.通常一个 location中

Nginx工作原理和优化

Nginx工作原理和优化 分类: Linux webserver2013-05-16 11:04 4975人阅读 评论(0) 收藏 举报 目录(?)[+] 1.  Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作. Nginx

Nginx技术手册

各类web服务器的占有率: http://w3techs.com/technologies/overview/web_server/all Nginx是一个高性能的web和反向代理服务器软件,与Apache相比,Nginx能够支持更多的并发连接(针对静态的,小文件服务器),且占用资源更少,效率很高. 作为负载均衡服务器,Nginx可以作为http server或DB等服务器的代理服务器,类似专业的Haproxy软件功能(Nginx代理功能相对简单,代理功能及效率不如Haproxy). 邮件代理服

nginx+tomcat 使用教程

Nginx + Tomcat Nginx负载均衡,其实主要就是用upstream.server指令,再配以权重等等参数.如果为了让nginx支持session共享,还需要额外增加一个模块. 一.Nginx负载均衡 在http{...}中配置一个upstream{...},参考如下: 引用 upstream tomcat { server 10.11.155.26:8080; server 10.11.155.41:8080; } 接着修改location节点,配置代理: 引用 location