Nginx 性能优化(配置文件详解)

随着访问量的不断增加,需要对 Nginx 和内核做相应的优化来满足高并发用户的访问,
那下面在单台 Nginx 服务器来优化相关参数。

Nginx.conf 配置优化:

worker_processes 8;
nginx 进程数,建议按照 cpu 数目来指定,一般为它的倍数。worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000
00100000 01000000 10000000;
为每个进程分配 cpu,上例中将 8 个进程分配到 8 个 cpu,当然可以写多个,或者将一
个进程分配到多个 cpu。
worker_rlimit_nofile 102400;
这个指令是指当一个 nginx 进程打开的最多文件描述符数目,理论值应该是最多打
开文件数(ulimit -n)与 nginx 进程数相除,但是 nginx 分配请求并不是那么均匀
,所以最好与 ulimit -n 的值保持一致。
use epoll;
使用 epoll 的 I/O 模型。epoll 是 Linux 内核为处理大批量文件描述符而作了改进的
poll,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统 CPU 利用
率。
worker_connections 102400;
每个进程允许的最多连接数,理论上每台 nginx 服务器的最大连接数为
worker_processes*worker_connections。
keepalive_timeout 60;
keepalive 超时时间,客户端到服务器端的连接持续有效时间,当出现对服务器的后
继请求时,keepalive-timeout 功能可避免建立或重新建立连接。
client_header_buffer_size 4k;
客户端请求头部的缓冲区大小,这个可以根据你的系统分页大小来设置,一般一个请求的头

部大小不会超过 1k,不过由于一般系统分页都要大于 1k,所以这里设置为分页大小。分页
大小可以用命令 getconf PAGESIZE 取得。
open_file_cache max=102400 inactive=20s;
这个将为打开文件指定缓存,默认是没有启用的,max 指定缓存数量,建议和打开
文件数一致,inactive 是指经过多长时间文件没被请求后删除缓存。
open_file_cache_valid 30s;
这个是指多长时间检查一次缓存的有效信息。
open_file_cache_min_uses 1;
open_file_cache 指令中的 inactive 参数时间内文件的最少使用次数,如果超过这
个数字,文件描述符一直是在缓存中打开的,如上例,如果有一个文件在 inactive
时间内一次没被使用,它将被移除。
2) Linux 内核参数优化:
net.ipv4.tcp_max_tw_buckets = 10000
timewait 的数量,默认是 180000。
net.ipv4.ip_local_port_range = 1024 65000
允许系统打开的端口范围。
net.ipv4.tcp_tw_recycle = 1
启用 timewait 快速回收。
net.ipv4.tcp_tw_reuse = 1
开启重用。允许将 TIME-WAIT sockets 重新用于新的 TCP 连接。
net.ipv4.tcp_syncookies = 1
开启 SYN Cookies,当出现 SYN 等待队列溢出时,启用 cookies 来处理。
 

原文地址:https://www.cnblogs.com/hujianli/p/10090032.html

时间: 2024-07-30 15:45:45

Nginx 性能优化(配置文件详解)的相关文章

ubuntu nginx 安装以及配置文件详解

1.到nginx官网下载源码包.最好下载稳定版本,nginx官网http://www.nginx.org/ 2.安装nginx依赖包运行命令: sudo apt-get install libssl-devsudo apt-get install libpcre3 libpcre3-dev 3.解压下载的nginx源码包.检查编译环境 ./configure --prefix=/usr/local/nginx 4.编译安装 make && make install 5.到nginx安装目录

搭建Nginx服务器及其配置文件详解

博文大纲: 一.Nginx介绍 二.搭建Nginx服务器 三.Nginx服务的版本升级至1.2 四.修改Nginx服务头部信息 五.nginx主配置文件中 location选项的详解 六.配置https访问Nginx 一.Nginx介绍 Nginx专为性能优化而开发,其最大的优点就是它的稳定性和低系统资源消耗,以及对http并发连接的高处理能力,单台物理服务器可支持20000~50000个并发请求,正是如此,大量提供社交网络.新闻资讯.电子商务及虚拟主机等服务的企业纷纷选择Nginx来提供web

MySQL影响性能的因素原因以及性能优化配置详解

(https://blog.csdn.net/kangshuo2471781030/article/details/79315577) 一.MySQL性能优化之-影响性能的因素 1.商业需求的影响 不合理需求造成资源投入产出比过低,这里我们就用一个看上去很简单的功能来分析一下. 需求:一个论坛帖子总量的统计,附加要求:实时更新 从功能上来看非常容易实现,执行一条SELECT COUNT(*) from 表名的Query 就可以得到结果.但是,如果我们采用不是MyISAM 存储引擎,而是使用的In

Nginx 服务器安装及配置文件详解

原文出处: Sean Chow(@SeanLoook)   欢迎分享原创到伯乐头条 Nginx 在工作中已经有好几个环境在使用了,每次都是重新去网上找博客,各种编译配置,今天自己也整理一份安装文档和 nginx.conf 配置选项的说明,留作以后参考. 1. 安装nginx 1.1 选择稳定版本 我们编译安装nginx来定制自己的模块,机器CentOS 6.2 x86_64.首先安装缺少的依赖包: 1 # yum -y install gcc gcc-c++ make libtool zlib

nginx服务器安装及配置文件详解

1. 安装nginx 1.1 选择稳定版本 我们编译安装nginx来定制自己的模块,机器CentOS 6.2 x86_64.首先安装缺少的依赖包: # yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel 这些软件包如果yum上没有的话可以下载源码来编译安装,只是要注意编译时默认安装的目录,确保下面在安装nginx时能够找到这些动态库文件(ldconfig). 为

nginx默认的配置文件详解

# For more information on configuration, see:# * Official English Documentation: http://nginx.org/en/docs/# * Official Russian Documentation: http://nginx.org/ru/docs/ user nginx;# 运行用户,默认是nginx worker_processes auto;# nginx进程数,一般设置为和cpu核数一样 error_lo

nginx学习(五):nginx.conf 核心配置文件详解

整体结构 详细信息 1.设置worker进程的用户,指的linux中的用户,会涉及到nginx操作目录或文件的一些权限,默认为nobody user root; 2.worker进程工作数设置,一般来说CPU有几个,就设置几个,或者设置为N-1也行 worker_processes 1; 3.nginx 日志级别debug | info | notice | warn | error | crit | alert | emerg,错误级别从左到右越来越大 4.设置nginx进程 pid pid

nginx配置vhost配置文件详解

//千锋PHP-PHP培训的实力派server { listen 80; server_name www.sina.com; root /data/www/sina; index index.php; location ~ .*\.(php|php5)?$ { root /data/www/sina; try_files $uri =404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FI

nginx配置文件详解笔记

web运维第一篇:nginx配置文件详解笔记#定义Nginx运行的用户和用户组user www www;#nginx进程数,建议设置为等于CPU总核心数.worker_processes 8;#全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]error_log /var/log/nginx/error.log info;#进程文件pid /var/run/nginx.pid;#一个nginx进程打开的最多文件描述符数目,理论值应

Nginx知多少系列之(三)配置文件详解

原文:Nginx知多少系列之(三)配置文件详解 目录 1.前言 2.安装 3.配置文件详解 4.工作原理 5.Linux下托管.NET Core项目 6.Linux下.NET Core项目负载均衡 7.Linux下.NET Core项目Nginx+Keepalived高可用(主从模式) 8.Linux下.NET Core项目Nginx+Keepalived高可用(双主模式) 9.Linux下.NET Core项目LVS+Keepalived+Nginx高可用集群 10.构建静态服务器 11.日志