个人学习笔记,谢绝转载!!!
原文:https://www.cnblogs.com/wshenjin/p/15724987.html
upstream PHPfpm {
server 127.0.0.1:9001;
keepalive 10;
}
server{
keepalive_requests 4096;
location ~ .*\.PHP$
{
include fcgi.conf;
fastcgi_pass PHPfpm;
fastcgi_index index.PHP;
expires off;
fastcgi_keep_conn on;
}
}
1、upstream中的keepalive设置:
此处keepalive的含义不是开启、关闭长连接的开关;也不是用来设置超时的timeout;更不是设置长连接池最大连接数。官方解释:
-
The connections parameter sets the maximum number of idle keepalive connections to upstream servers connections(设置到upstream服务器的空闲keepalive连接的最大数量)
-
When this number is exceeded, the least recently used connections are closed. (当这个数量被突破时,最近使用最少的连接将被关闭)
-
It should be particularly noted that the keepalive directive does not limit the total number of connections to upstream servers that an Nginx worker process can open.(特别提醒:keepalive指令不会限制一个Nginx worker进程到upstream服务器连接的总数量)
2、keepalive_requests 指令用于设置一个keep-alive连接上可以服务的请求的最大数量。当最大请求数量达到时,连接被关闭。默认是100。
这个参数的真实含义,是指一个keep alive建立之后,Nginx就会为这个连接设置一个计数器,记录这个keepalive的长连接上已经接收并处理的客户端请求的数量。如果达到这个参数设置的最大值时,则Nginx会强行关闭这个长连接,逼迫客户端不得不重新建立新的长连接。
这里设置和PHP-fpm的pm.max_request一样
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。