nginx优化: timeout超时配置
一,为什么要做连接超时设置?
nginx在保持着与客户端的连接时,要消耗cpu/内存/网络等资源,
如果能在超出一定时间后自动断开连接,
则可以及时释放资源,起到优化性能、提高效率的作用
说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,keepalive的超时时长:keepalive_timeout
1,keepalive的作用:
HTTP 的 KeepAlive 模式:
webserver 在处理完一个请求后保持这个 TCP 连接的状态仍然是打开。
如果再次接收到来自此客户端的其它请求,
服务端会使用这个未关闭的连接,而不是再新建一个连接
2,keepalive的配置:
keepalive_timeout 60 45;
两个参数分别是:
nginx服务的超时时间(默认值是75s,建议设置为60秒)
nginx在给浏览器的响应header信息中的超时时间
注意,第二个参数设置之后才会在浏览器端出现keepalive一项:
如图:

3,nginx给header的超时信息并不是肯定会得到浏览器的执行
4,keepalive_timeout的值应该大于client_body_timeout
三,客户端header的超时时长:client_header_timeout
client_header_timeout 15s;
默认值是60s
客户端向服务端发送一个完整的 request header 的超时时间
如果60s内没有收到完整的http request header,则为超时
如果客户端超时,Nginx 返回 HTTP 408(Request Timed Out)。
四,客户端body的超时时长:client_body_timeout
client_body_timeout 15s;
默认值是60s
客户端向服务端发送 request body 的超时时间
如果连续的60s内没有收到客户端的1个字节,则表示超时
如果客户端超时,Nginx 返回 HTTP 408(Request Timed Out)。
五,向客户端发送数据超时时长:send_timeout
send_timeout 15s;
默认值是60s
send_timeout 指定客户端的响应超时时间。
这个设置指的是在这段时间内,客户端没有读取任何数据,nginx就会关闭连接.
六,如果有大文件上传时需配置哪个指定?
有大文件上传时,需要指定body的最大值
client_max_body_size 50m;
这个指定的默认值是1M,基本上不可能满足使用需求
如果需要上传较大的文件,在这里指定一个最大值
这里指定文件最大是50MB
七,查看nginx的版本:
[root@centos8 conf.d]# /usr/local/soft/nginx-1.18.0/sbin/nginx -v
nginx version: nginx/1.18.0
nginx优化: timeout超时配置的更多相关文章
- nginx中的超时配置
nginx.conf配置文件中timeout超时时间设置 client_header_timeout 语法 client_header_timeout time默认值 60s上下文 http serv ...
- Nginx服务优化及优化深入(配置网页缓存时间、日志切割、防盗链等等)
原文:https://blog.51cto.com/11134648/2134389 默认的Nginx安装参数只能提供最基本的服务,还需要调整如网页缓存时间.连接超时.网页压缩等相应参数,才能发挥出服 ...
- Nginx服务器性能优化与安全配置实践指南
转载自:https://www.bilibili.com/read/cv16151784?spm_id_from=333.999.0.0 1.引言 1.1 目的 为了更好的指导部署与测试艺术升系统ng ...
- nginx反向代理的配置优化
作者:守住每一天 blog:liuyu.blog.51cto.combbs:bbs.linuxtone.orgmsn:liuyubj520#hotmail.comemail:liuyu105#gmai ...
- Nginx超时配置
Nginx超时配置 1.client_header_timeout 语法client_header_timeout time 默认值60s 上下文http server 说明 指定等待client发送 ...
- timeout超时时长优化和hystrix dashboard可视化分布式系统
在生产环境中部署一个短路器,一开始需要将一些关键配置设置的大一些,比如timeout超时时长,线程池大小,或信号量容量 然后逐渐优化这些配置,直到在一个生产系统中运作良好 (1)一开始先不要设置tim ...
- CentOS6.5 Nginx优化编译配置[续]
继续上文CentOS6.5 Nginx优化编译配置本文记录有关Nginx系统环境的一些细节设置,有关Nginx性能调整除了配置文件吻合服务器硬件之前就是关闭不必要的服务.磁盘操作.文件描述符.内核调整 ...
- [效果不错] nginx 高并发参数配置及linux内核参数优化,完整的内核优化设置。PHP-FPM高负载解决办法。
背景:对vps小资源的实践中对,https://justwinit.cn/post/7536/ 的再优化,再实践,再优化,特别是Nginx,PHP,内核: 零)Nginx: error_log /da ...
- nginx优化配置大全
由于面试被问到nginx优化做过哪些 后来发现,其实做过的也不少,忘了的更不少,因此写个博客记录一下(里面有一些内容来源于其他作者). 配置文件样例为生产环境样例. 1.nginx基本优化 安装方式有 ...
随机推荐
- [LeetCode]96. 不同的二叉搜索树(DP,卡特兰数)
题目 给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例: 输入: 3 输出: 5 解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 1 \ ...
- 国产化之路-麒麟V10操作系统安装.net core 3.1 sdk
随着芯片国产化,操作系统国产化,软件国产化的声浪越来越高,公司也已经把开发项目国产化提上了日程,最近搞来了台长城的国产化电脑主机,用来搞试验,安装的是麒麟V10的操作系统,国产化折腾之路就此开始,用的 ...
- EasyCode插件使用及模板参考
EasyCode插件使用及模板参考 1.介绍安装 Easycode是idea的一个插件,可以直接对数据的表生成entity.controller.service.dao.mapper无需任何编码,简单 ...
- 使用PyCharm引入需要使用的包
在学习python的时候,被推荐了使用PyCharm这款IDE,但是经常在已经pip安装第三方包的时候import包的时候却发生了问题- -无法引入. 进行模块的加载,百度之后,了解到,在这款IDE中 ...
- leetcode1552题解【二分+贪心】
leetcode1552.两球之间的磁力 题目链接 算法 二分+贪心 时间复杂度O(nlogn + nlogm) 1.根据题意描述,我们需要将m个球放入到n个篮子中,根据题目中数据范围描述发现m &l ...
- Spring Boot 项目打成 war 包部署
Spring Boot 一个非常方便的功能就是支持内置的 Servlet 容器,一般我们部署 Spring Boot 应用时都是打成一个可执行的 Jar 包进行部署.其实 Spring Boot 也是 ...
- PJzhang:CVE-2020-1472微软NetLogon权限提升漏洞~复现
猫宁~~~ 虚拟机上进行 安装windows 2008 R2 查看服务器ip 本地连接属性,取消ipv6,ip设置为192.168.43.158,子网掩码255.255.255.0,网关192.168 ...
- Python-py2和py3读写文本区别
python2和python3的区别? python 2 str 对应 python3 bytes python 2 uincode 对应 ...
- 内存操作【memset】【memcpy】
void *memset(void *s, int c, unsigned long n); 将指针变量 s 所指向的前 n 字节的内存单元用一个"整数" c 替换,注意 c 是 ...
- 关于C++的右值引用的一些看法
简介 关于C++中的右值引用的详细可以看这一批博文<从4行代码看右值引用>.那一篇博文详细结合四行简单的代码详细介绍了右值引用的使用方法和一些场景,非常实用. 而本篇博文主要介绍一下我在学 ...