#定义nginx运行的用户和用户组

user www www;

 

#启动进程,通常设置成和cpu的数量相等

worker_processes 8 ;

 

#为每个进程分配CPU,上面京8个进程分配到8个cpu,当然可以写多个,或者将一个进程分配到多个CPU

worker_cpu_affinity 00000001 00000100 00001000 00010000 00100000 01000000 10000000;

 

#该指令是当一个Nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit-n)与nginx进程数相除,但是Nginx分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致

worker_rlimit_nofile 102400;

 

#全局错误日志

error_log /usr/local/nginx/logs/error.log;

#错误日志定义等级,[debug,info,notice,warn,error,crit]

 

#pid文件

pid  /usr/local/nginx/nginx.pid;

 

#工作模式及连接数上限

events{

  use  epoll;

        }

  #epoll 是多路复用I/O(I/O multipliexing)中的一种方式,但是仅用于linux 2.6以上内核,可以大大提高nginx的性能

 

#单个后台worker_process进程的最大并发连接数(最大连接数=连接数*进程数)

worker_connections 102400;

 

#尽可能多地接受请求

multi——accept on;

 

#设定http服务器,利用他的反向代理功能提供负载均衡

  http{

    include  mime.types;

    default_type  application/octet-stream;

    }

#设定日志格式

access_log  /usr/local/nginx/log/nginx/access.log;

 

#sedfile指定nginx是否调用sendfile函数(zero copy方式)来输出文件,对于普通应用必须为on

#如果用来进行下载登用用磁盘I/O重负载应用,可设置为of,来平衡磁盘与网络I/O

sendfile  on ;

 

#开启目录列表访问,适合下载服务器,默认关闭

autoindex   on ;

 

#防止网络阻塞

tcp_nopush on;

#keepalive超时时间,客户端到服务器的连接持续有效时间,当出现对服务器的后端请求时,可以避免建立或重新建立连接

keepalive_timeout 60;

  

 

#提高数据的实时响应性

tcp_nodelay  on;

#开启gzip压缩

gzip on;

gzip_min_length 1KB;

gzip_buffers  4 16k;

gzip_http_version 1.1;

gzip_comp_level 2;

  #压缩级别大小,最大为9,值越小,压缩后比例越小,CPU处理更快,值越大,消耗CPU比较高

gzip_types  text/plain application/x - javescript text/css application/xml;

gzip_vary on;

#允许客户端请求的最大单文件字节数

client_max_body_size 10MB;

#缓冲区代理缓冲用户端请求的最大字节数

client_body_buffer_size 128KB;

#nginx跟后端服务器超时时间(代理连接超时)

proxy_connect_timeout 90;

#后端服务器数据回传时间(代理发送超时)

proxy_send_timeout 90;

#连接成功后,后端服务器响应时间(代理接受超时)

proxy_read_timeout 90;

#设置代理服务器(nginx)保持用户头信息的缓冲区大小

proxy_buffer_size 4KB;

#proxy_buffers缓冲区,网页平均在32KB一下的话,这样设置

proxy_buffers 4 32KB;

#高负荷下缓冲大小(proxy_buffers*2)

proxy_busy_buffers_size 64KB;

#设定请求缓冲

large_client_header_buffers 4 4KB;

client_header_buffer_size 4KB;

  #客户端请求头部的缓冲区大小,这个可以根据系统分页大小来设置,一般一个请求的头部不会超过1KB,不过一般胸痛分页都大于1KB,所以这里设置为分页大小,分页大小可以用命令getconf pagesize取得

#为打开文件指定缓冲,默认时没有启用的,max指定缓冲数量,建议和打开文件数一致,inactive是指经过多长时间文件没被请求后删除缓冲

open_file_cache max = 102400 inactive = 20s;

#多长时间检查一次缓冲的有效信息

open_file_cache_valid 30s;

#open_file_cache指令中的inactive参数时间内文件的最少使用次数,如果超过这个数字,文件描述符一致是在缓冲中打开的,比如上面,如果有一个文件在inactive

open_file_cache_min_user 1;

#包含其他配置文件,如自定义虚拟主机

include vhosts.conf;

 

转载请注明出处:https://www.cnblogs.com/zhangxingeng/p/10695361.html

nginx优化之配置文件优化一常用参数的更多相关文章

  1. Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践

    Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践 编码转换问题(主要就是中文乱码) (1)input 中的cod ...

  2. 关于Nginx里面的配置文件里面的location参数的意思

    location是指当遇到这个单词的时候,把root改成大括号里面的值,再把单词和后面的路径加上root变成总的文件路径进行搜索,如果没有location,直接把root加上域名后面的路径变成总的文件 ...

  3. Nginx核心配置文件常用参数详解

    Nginx核心配置文件常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于Nginx权威文档的话童鞋们可以参考Nginx官方文档介绍:http://nginx.org/ ...

  4. [Nginx] – 性能优化 – 配置文件优化

    Nginx基本安全优化 1.调整参数隐藏Nginx版本号信息     一般来说,软件的漏洞都和版本有关,因此我们应尽量隐藏或清除Web服务队访问的用户显示各类敏感信息(例如:Web软件名称及版本号等信 ...

  5. nginx指令中的优化(配置文件)

    nginx指令中的优化(配置文件)worker_processes 8; nginx进程数,建议按照cpu数目来指定,一般为它的倍数.worker_cpu_affinity 00000001 0000 ...

  6. Linux(7)- Nginx.conf主配置文件、Nginx虚拟主机/访问日志/限制访问IP/错误页面优化、Nginx反向代理、Nginx负载均衡

    一.Nginx.conf主配置文件 Nginx主配置文件conf/nginx.conf是一个纯文本类型的文件,整个配置文件是以区块的形式组织的.一般,每个区块以一对大括号{}来表示开始与结束. 核心模 ...

  7. Nginx 核心配置-可优化配置参数

    Nginx 核心配置-可优化配置参数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.nginx的官网查看指令帮助信息方法 1>.打开nginx的官网(https://ng ...

  8. (转)[Nginx] – 配置文件优化 [一 ,二]

    [Nginx] – 安全优化 – 配置文件优化 [二] 原文:https://www.abcdocker.com/abcdocker/586 [Nginx] – 性能优化 – 配置文件优化 [一] 原 ...

  9. mariadb配置文件优化参数

    mariadb数据库优化需要根据自己业务需求以及根据硬件配置来进行参数优化,下面是一些关于mariadb数据库参数优化的配置文件. 1 如下为128G内存32线程处理器的mariadb配置参数优化: ...

随机推荐

  1. 加密算法:DigestUtils与java MessageDigest

    1.使用Spring的DigestUtils public class StringUtilTest { static final String TARGET = "changeme&quo ...

  2. html select 标签设置默认选中

    方法有两种. 第一种通过<select>的属性来设置选中项,此方法可以在动态语言如php在后台根据需要控制输出结果. 1 2 3 4 5 < select  id =  " ...

  3. redis与CPU、内存

    任何一个后端应用,包括代码都要考虑对于CPU和内存的影响.redis本质上类似于nodejs,单进程.单线程,事件驱动,但不同的是redis是CPU密集型的.这里列出了redis与内存CPU的相关考虑 ...

  4. 【Python3爬虫】你会怎么评价复仇者联盟4?

    一.写在前面 最近复仇者联盟4正在热映中,很多人都去电影院观看了电影,那么对于这部电影,看过的人都是怎么评价的呢?这时候爬虫就可以派上用场了! 二.主要思路 首先打开豆瓣电影,然后进入复仇者联盟4的详 ...

  5. Java相关面试题总结

    本文分为十九个模块,分别是: Java 基础.容器.多线程.反射.对象拷贝.Java Web .异常.网络.设计模式.Spring/Spring MVC.Spring Boot/Spring Clou ...

  6. 服务端预渲染之Nuxt(爬坑篇)

    Nuxt是解决SEO的比较常用的解决方案,随着Nuxt也有很多坑,每当突破一个小技术点的时候,都有很大的成就感,在这段时间里着实让我痛并快乐着.在这里根据个人学习情况,所踩过的坑做了一个汇总和总结. ...

  7. 8天入门docker系列 —— 第二天 通过一个aspnetcore程序加深对容器的理解

    我们知道容器是一个打包了应用和相关依赖的盒子,那怎么去操控这个盒子呢? 这一篇我通过一个简单的aspnetcore程序来加深对盒子的理解,使用之前先 安装一下Docker的环境. 一:Docker的安 ...

  8. Java学习路线图分析

     Java学习路线分析图 第一阶段 技术名称 技术内容 J2SE(java基础部分) java开发前奏 计算机基本原理,Java语言发展简史以及开发环境的搭建,体验Java程序的开发,环境变量的设置, ...

  9. 你用.NET开发APP时,在云平台打包APP要填个“包名”的含义

    ios 在ios平台,包名有它专有的名词:bundle ID.bundle ID可以翻译成包ID,也可以叫APP ID或者应用ID,他是每一个ios应用的全球唯一标识,只要bundle id不变,无论 ...

  10. [PHP]实体类基类和序列化__sleep问题

    1.构造函数传参2.__get和__set实现,当调用不存在的属性的时候,可以取值和赋值到data属性数组3.__sleep实现,当序列化对象的时候,只序列化data属性数组和类内初始化定义的字段4. ...