您现在的位置是:青岛网站建设 > 网站建设

绝对详细!Nginx基本配置、性能优化指南

青岛网站建设2024-05-04 00:15:11【网站建设】3人已围观

简介 < 大多数的Nginx装置指南告诉你如下基本常识&mdash;&mdash;通过apt-get装置,修改这里或那里的多少行配置,好了,你已经有了一个Web服

<

绝对详细!Nginx基本配置、性能优化指南

大多数的绝对x基Nginx装置指南告诉你如下基本常识&mdash;&mdash;通过apt-get装置,修改这里或那里的详细多少行配置,好了,本配你已经有了一个Web服务器了!置性而且,优南在大多数情况下,绝对x基一个通例装置的详细nginx对你的网站来说已经能很好地工作了。然而,本配假如你真的置性想挤压出nginx的机能,你必须更深刻一些。优南在本指南中,绝对x基我将说明Nginx的详细那些设置可能微调,以优化处理大量客户端时的本配机能。须要留神一点,置性这不是优南一个全面的微调指南。这是一个简单的预览&mdash;&mdash;那些可能通过微调来进步机能设置的概述。你的情况可能不同。
基本的 配置
咱们将修改的唯一文件是nginx.conf,其中包含Nginx不同模块的所有设置。你应当可能在服务器的/etc/nginx目录中找到nginx.conf。首先,咱们将念叨一些全局设置,而后按文件中的模块挨个来,谈一下哪些设置可能让你在大量客户端拜访时领有良好的机能,为什么它们会进步机能。本文的结尾有一个完全的配置文件。
高层的配置
nginx.conf文件中,Nginx中有少数的多少个高等配置在模块局部之上。
user www-data;
pid /var/run/nginx.pid;
worker_processes auto;
worker_rlimit_nofile 100000;
user跟pid应当按默认设置 &ndash; 咱们不会更改这些内容,因为更改与否不什么不同。网站推广常见的推广方式主要是SEO优化网站内容或构架提升网站在搜索引擎的排名,在论坛、微博、微信等平台发布信息,在其他热门平台发布网站外部链接等。
worker_processes 定义了nginx对外供给web服务时的worder进程数。最优值取决于很多因素,包含CPU核的数量、存储数据的硬盘数量及负载模式。不能判断的时候,将其设置为可用的CPU内核数将是一个好的开端。
worker_rlimit_nofile 更改worker进程的最大打开文件数限度。假如没设置的话,这个值为操作体系的限度。设置后你的操作体系跟Nginx可能处理比 ;ulimit -a;更多的文件,所以把这个值设高,这样nginx就不会有 ;too many open files;问题了。
Events模块
events模块中包含nginx中所有处理连接的设置。
events {
worker_connections 2048;
multi_accept on;
use epoll;
}
worker_connections设置可由一个worker进程同时打开的最大连接数。网站推广常见的推广方式主要是SEO优化网站内容或构架提升网站在搜索引擎的排名,在论坛、微博、微信等平台发布信息,在其他热门平台发布网站外部链接等。假如设置了上面提到的worker_rlimit_nofile,咱们可能将这个值设得很高。
记住,最大客户数也由体系的可用socket连接数限度,所以设置不切实际的高没什么利益。
multi_accept 告诉nginx收到一个新连接告诉后接收尽可能多的连接。
use 设置用于复用客户端线程的轮询方法。假如你利用Linux 2.6+,你应当利用epoll。假如你利用*BSD,你应当利用kqueue。想晓得更多有关事件轮询?看下维基百科吧

HTTP 模块
HTTP模块把持着nginx http处理的所有中心特点。因为这里只有很少的配置,所以咱们只节选配置的一小局部。所有这些设置都应当在http模块中,甚至你不会特别的留神到这段设置。
http {
server_tokens off;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
}
server_tokens 并不会让nginx履行的速度更快,但它可能封闭在错误页面中的nginx版本数字,这样对保险性是有利益的。
sendfile可能让sendfile施展作用。sendfile可能在磁盘跟TCP socket之间彼此拷贝数据。Pre-sendfile是传递数据之前在用户空间申请数据缓冲区。之后用read将数据从文件拷贝到这个缓冲区,write将缓冲区数据写入网络。sendfile是破即将数据从磁盘读到OS缓存。因为这种拷贝是在内核实现的,sendfile要比组合read跟write以及打开封闭抛弃缓冲更加有效
tcp_nopush 告诉nginx在一个数据包里发送所有头文件,而不一个接一个的发送
tcp_nodelay 告诉nginx不要缓存数据,而是一段一段的发送&ndash;当须要及时发送数据时,就应当给利用设置这个属性,这样发送一小块数据信息时就不能破即得到返回值。
access_log off;
error_log /var/log/nginx/error.log crit;
access_log设置nginx是否将存储拜访日志。网站推广常见的推广方式主要是SEO优化网站内容或构架提升网站在搜索引擎的排名,在论坛、微博、微信等平台发布信息,在其他热门平台发布网站外部链接等。封闭这个选项可能让读取磁盘IO操作更快。
error_log 告诉nginx只能记录重大的错误。
keepalive_timeout 10;
client_header_timeout 10;
client_body_timeout 10;
reset_timedout_connection on;
send_timeout 10;

>

绝对详细!Nginx基本配置、性能优化指南

很赞哦!(64)

上一篇: 2023年清明节放假通知

下一篇: 建设