(2) 当做事器建立的连接没有吸收处理要求时,可以在指定的韶光内让它超时自动退出
连接超时的浸染(1) 将无用的连接设置为尽快超时,可以保护做事器的系统资源(CPU、内存、磁盘)
(2) 当连接很多时,及时断掉那些建立好的但又永劫光不干事的连接,以减少其占用的做事器资源

(3) 如果黑客攻击,会不断地和做事器建立连接,因此设置连接超时以防止大量花费做事器的资源
(4) 如果用户要求了动态做事,则 Nginx 就会建立连接,要求 FastCGI 做事以及后端 MySQL 做事,设置连接超时,使得在用户容忍的韶光内返回数据
连接超时存在的问题(1) 做事器建立新连接是要花费资源的,因此,连接超时时间不宜设置得太短,否则会造成并发很大,导致做事器瞬间无法响运用户的要求
(2) 有些 PHP 站点会希望设置成短连接,由于 PHP 程序建立连接花费的资源和韶光相对要少些
(3) 有些 Java 站点会希望设置发展连接,由于 Java 程序建立连接花费的资源和韶光要多一些,这时由措辞的运行机制决定的
设置连接超时(1) keepalive_timeout :该参数用于设置客户端连接保持会话的超时时间,超过这个韶光做事器会关闭该连接
(2) client_header_timeout :该参数用于设置读取客户端要求头数据的超时时间,如果超时客户端还没有发送完全的 header 数据,做事器将返回 “Request time out (408)” 缺点
(3) client_body_timeout :该参数用于设置读取客户端要求主体数据的超时时间,如果超时客户端还没有发送完全的主体数据,做事器将返回 “Request time out (408)” 缺点
(4) send_timeout :用于指定相应客户真个超时时间,如果超过这个韶光,客户端没有任何活动,Nginx 将会关闭连接
(5) tcp_nodelay :默认情形下当数据发送时,内核并不会立时发送,可能会等待更多的字节组成一个数据包,这样可以提高 I/O 性能,但是,在每次只发送很少字节的业务场景中,利用 tcp_nodelay 功能,等待韶光会比较长
http {
include mime.types;
server_names_hash_bucket_size 512;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
tcp_nodelay on;
client_header_timeout 15;
client_body_timeout 15;
send_timeout 25;
include vhosts/.conf;
}