运行用户及用户组
worker_processes auto启动进程,通常设置成和cpu数量相等的一个数值,默认为1。可以设置为auto,这样nginx会自动根据本机的cpu内核数生成对应数量的worker进程。可以通过lscpu命令确定可用的核心数。
pid log/nginx.pid进程pid的存放位置
error_log log/error.log warn; error_log log/info.log info;设置日志打印位置
server_tokens off隐藏版本号
events模块包含了nginx有关连接处理的配置。
worker_connections 4096一个worker能够同时打开的最大连接数,该值最大为workerrlimitnofile的值
在nginx作为http服务器时,最大连接数为workerprocesses * workerconnections
在nginx作为反向代理服务器时,最大连接数为workerprocesses*workerconnections/2
请求缓冲区在NGINX请求处理中起着重要作用。 在接收到请求时,NGINX将其写入这些缓冲区。 这些缓冲区中的数据可作为NGINX变量使用,例如$request_body。 如果缓冲区与请求大小相比较小,则数据将写入磁盘上的文件,因此将涉及I/O操作。 NGINX提供了可以改变请求缓冲区的各种指令。
client_header_buffer_size 8k它为请求头分配一个缓冲区。 如果请求头大小大于指定的缓冲区,则使用largeclientheader_buffers指令分配更大的缓冲区。
client_max_body_size 130m此指令设置NGINX能处理的最大请求主体大小。 如果请求大于指定的大小,则NGINX发回HTTP 413(Request Entity too large)错误。 如果服务器处理大文件上传,则该指令非常重要。
proxy_buffer_size 64k1 解决后端服务传输数据过多,其实是header过大的问题,参考博客
2 后端服务器的相应头会放到proxybuffersize当中,这个大小默认等于proxybuffers当中的设置单个缓冲区的大小。 proxybuffersize只是响应头的缓冲区,没有必要也跟着设置太大。 proxybuffer_size最好单独设置,一般设置个4k就够了。
proxy_buffers 8 64k1 若某些请求的响应过大,则超过buffers的部分将被缓冲到硬盘(缓冲目录由temppath指令指定), 当然这将会使读取响应的速度减慢, 影响用户体验. 可以使用proxymaxtempfile_size指令关闭磁盘缓冲
2 proxybuffers的缓冲区大小一般会设置的比较大,以应付大网页。 proxybuffers当中单个缓冲区的大小是由系统的内存页面大小决定的,Linux系统中一般为4k。 proxy_buffers由缓冲区数量和缓冲区大小组成的。总的大小为number*size
转载于:https://www.cnblogs.com/sonofelice/p/8483352.html
相关资源:JAVA上百实例源码以及开源项目