nginx 优化

Posted IT菜鸟园

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx 优化相关的知识,希望对你有一定的参考价值。

worker_processes 设置为CPU总核数量的两倍,

如8核;

worker_processes 8;

 

worker_cpu_affinity 多少个cpu多少个0

如4个

worker_cpu_affinity 0001 0010 0100 1000;

8个

worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

 

 

worker_rlimit_nofile配置要和系统的单进程打开文件数一致

 

ulimit -n 查看
worker_rlimit_nofile 65536;

 

 

events {

#作为http时worker_processes*worker_connections

#作为代理时worker_processes * worker_connections/4
worker_connections  64;#worker工作进程并发处理(发起)的最大连接数(包含所有连接数)。

##语法 use [ kqueue | rtsig | epoll | /dev/poll |select | poll ];

use epoll; # 使用epoll(linux2.6的高性能方式)
}

 

http{

 #文件扩展名与文件类型映射表

include       mime.types

#默认文件类型,普通的文件流,并提示用户下载文件

 default_type application/octet-stream;

gzip on;              //开启gzip压缩功能

gzip_min_length 1k; //这里表示如果文件小于1k,就不用压缩,因为没有意义,本来就很小

 # 设置压缩响应的缓冲块的大小和个数

gzip_buffers 4 16k;

#设置压缩响应所需的最小HTTP请求版本

 gzip_http_version 1.0;

#可以是0到9中的任一个,级别越高,压缩就越小,节省了带宽资源,但同时也消耗CPU资源

 gzip_comp_level 3;

#表示我在传送数据时,给客户端说明我使用了gzip压缩

 gzip_vary on;

#除了“ text/html” 之外,还可以针对指定的MIME类型启用gzip的响应特殊值“ *”匹配任何MIME类型(0.8.29)。“ text/html”类型是默认压缩

 gzip_types text/plain text/css text/xml application/x-javascript application/xml application/atom-xml text/javascript;

#隐藏nginx版本号

 server_tokens Off;

#nginx作为代理服务器的时候,当被代理的一台服务器出现error的时候,直接将请求转给下一台服务器处理

proxy_next_upstream error;

 #设置为on表示启动高效传输文件的模式

sendfile        on;

#参数设置保持活动客户端连接在服务器端保持打开状态的超时时间,保持连接的超时时间

keepalive_timeout  60;

#与FastCGI服务器建立连接的超时时间

fastcgi_connect_timeout 600;

#设置向FastCGI服务器发送请求的超时时间

fastcgi_send_timeout 600;

#设置从FastCGI服务器读取响应的超时时间

fastcgi_read_timeout 600;

#限制同一客户端ip地址带宽为100M;

limit_conn_zone $binary_remote_addr zone=perip:100m;

#限制同一server最大并发数

limit_conn_zone $server_name zone=perserver:100m;

#设置读取客户端请求标头的缓冲区大小

client_header_buffer_size 32k;

#设置用于读取大型客户端请求标头的最大值缓冲区

large_client_header_buffers 4 32k;

#设置缓存源服务器的静态文件

proxy_temp_path /tmp;

#如果省略此参数或将其设置为该值on,则将使proxy_temp_path指令为给定位置设置的目录

#*levels设置目录层次

#keys_zone设置缓存名字和共享内存大小

#inactive在指定时间内没人访问则被删除在这里是1天

#max_size最大缓存空间*

proxy_cache_path  /dev/shm/cache  levels=1:2  keys_zone=cache_one:400m inactive=1d max_size=4g;

 #nginx使用请求的端口,而不是使用被代理端返回的端口,被代理的服务器返回的http里的header,加入了location告诉客户端跳转,这时候nginx收到返回的信息后,在location里加入了自己的端口号,在返回给客户端

port_in_redirect on;

#独立出不同网站不同配置文件

include selfconf/*.conf;

 }

 













以上是关于nginx 优化的主要内容,如果未能解决你的问题,请参考以下文章

Nginx——Nginx启动报错Job for nginx.service failed because the control process exited with error code(代码片段

使用 C++ 反转句子中的每个单词需要对我的代码片段进行代码优化

如何优化C ++代码的以下片段 - 卷中的零交叉

从JVM的角度看JAVA代码--代码优化

Android 逆向整体加固脱壳 ( DEX 优化流程分析 | DexPrepare.cpp 中 dvmOptimizeDexFile() 方法分析 | /bin/dexopt 源码分析 )(代码片段

nginx.conf 忽略了 nginx-ingress 配置映射片段