一    缓冲区基础知识铺垫

①    proxy_temp_path

'1'表示层级1的目录名为1个数字(0-9);'2'表示层级2目录名为2个数字(00-99)

+++++++++++'遗留问题'+++++++++++1)  存储时机-->'后端服务器response超出nginx侧的buffer配置',缓冲'存储不下'2)  如果使用'本地'存储,则要考虑该'目录'分区容量的大小,避免'磁盘不可写'

②    proxy_buffering

proxy_uffering off 传输机制

③    proxy_buffers

1) 这个指令用于设置'从被代理服务器读取应答内容'的缓存区的'数目'和'大小'2) 数目可以'任意定',但是一个'缓存区的大小'一般就是'4k或者8k'

 

④    proxy_buffer_size

响应头太大报错

'nginx侧报错':'error日志'得到-->'upstream sent too big header' while reading response header from upstream'clinet端报错':client收到的是'502报错'根因: '后端服务器'返回给nginx的header'太大',超出了'预设'值

⑤    proxy_busy_buffers_size

⑥   proxy_temp_file_write_size

重点:写入'temp_file'的频率'或者'颗粒度

⑦    proxy_max_temp_file_size

重点: 当buffer缓冲区'超过proxy_buffers+​proxy_buffer_size',然后通过'​proxy_temp_file_write_size​'频率就开始'刷写'磁盘

fastcgi同样引发上述的warn

⑧    proxy_connect_timeout

备注:如果代理服务器在此时间内'未返回'任何内容,nginx将'返回504'给'client'

⑨    proxy_read_timeout

proxied server --> "被代理服务器[后端服务器]"1.  该指令设置与代理服务器的'读超时'时间2.  它决定了'nginx会等待多长时间'来获得请求的响应3.  这个时间不是获得整个response的时间,而是'两次read操作'的时间补充: '后端发送'-->'nginx接收'场景;'nginx'主动关闭备注:nginx会等待多长时间来'获得'请求的响应

⑩    proxy_send_timeout

1. 这个指定设置了'发送请求'给'upstream服务器'的超时时间2. 超时设置'不是'整个发送期间,而是在'两次write操作'期间3. 如果'超时'后,upstream'没有收到'新的数据,nginx会'关闭'连接补充: 'nginx发送'-->'后端接收'场景;'后端'主动关闭

二     nginx反向代理下载文件失败处理

①    代理流程

+++++++++nginx作为一个"反向代理中间件",常见的代理流程为+++++++++1) 接收客户端'请求'2) 将请求'转发'到后端服务器3) 接收后端服务器的'响应'4) 再将响应'转发'给客户端备注:以上四步都可能'产生超时',解决nginx超时问题最关键时要知道是在'哪一步超时'了,然后再'调整'响应的参数

②    报错一

1)实验现象

+++++++++"现象"+++++++++1) 客户端下载文件时候,先到'代理nginx',然后nginx'找后端服务器'要文件。2) 在下载'1G以上大文件'时候总是'无法正确'下载,下载1G左右就停止了.

2)原理分析

3)根因分析

Nginx Buffer 机制引发的下载故障

记一次下载大文件存在数据异常问题排查

4)解决策略

说明: wget '下载大文件'可以看到'整个过程',最好'加上--limit-rate=限速'观察

wget -c 断点续传  未尝试过该方案

关于nginx支持断点续传的内容

nginx作为反向代理进行断点续传的一些注意事项

HTTP 请求头 Range  http协议 Range、If-Range  辅助参考

③      问题2:缓存目录不可写

说明: 这种'临时目录不可写'-->可能是'目录权限'问题;可能是'目录所在的分区'容量满了解决策略:修改'目录权限';热更新'扩容'分区

浏览器下载文件不全解决方法

nginx -t 的危险性

④    nginx日志相关时间解读补充

⑤     补充:概念辨析

1)在HTTP协议中,'消息实体长度'和'消息实体的传输长度'是有区别2)比如说gzip压缩下,消息实体长度是'压缩前'的长度,消息实体的传输长度是'gzip压缩后'的长度

⑥     数据下载传输原理

nginx(二十八)nginx下载文件失败相关推荐

  1. linux chattr 无权限,从零开始学习Linux(二十八):文件权限之chattr权限

    1.chattr命令 命令格式: chattr [+-=] [选项] 文件名或者目录名: 参数说明: +:增加权限: -:删除权限: = 等于某权限: 选项说明: i:如果对文件设置i属性,则不允许对 ...

  2. 小甲鱼《零基础学习Python》课后笔记(二十八):文件——因为懂你,所以永恒

    测试题 0.下边只有一种方式不能打开文件,请问是哪一种,为什么? f = open('E:/test.txt','w') # A f = open('E:\test.txt','w') # B f = ...

  3. nginx反向代理下载文件失败处理

    最近遇到了客户在从我们的服务器下载文件失败时的情况.然后把解决方案一并整理一下以备后续.需要说明的是,我们前端都是使用nginx来做反向代理,后面的逻辑处理采用php的方式. 1.缓存目录不可写 ng ...

  4. WCF技术剖析之二十八:自己动手获取元数据[附源代码下载]

    WCF技术剖析之二十八:自己动手获取元数据[附源代码下载] 原文:WCF技术剖析之二十八:自己动手获取元数据[附源代码下载] 元数据的发布方式决定了元数据的获取行为,WCF服务元数据架构体系通过Ser ...

  5. JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤...

    JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...

  6. JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤

    JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...

  7. 2021年安全生产工作总结及2022年思路计划(二十八篇)PPTX(附下载)

    摘要:2021年安全生产工作总结及2022年思路计划(二十八篇) 公众号:安全生产星球

  8. (转载)Android项目实战(二十八):使用Zxing实现二维码及优化实例

    Android项目实战(二十八):使用Zxing实现二维码及优化实例 作者:听着music睡 字体:[增加 减小] 类型:转载 时间:2016-11-21 我要评论 这篇文章主要介绍了Android项 ...

  9. OpenCV学习笔记(二十六)——小试SVM算法ml OpenCV学习笔记(二十七)——基于级联分类器的目标检测objdect OpenCV学习笔记(二十八)——光流法对运动目标跟踪Video Ope

    OpenCV学习笔记(二十六)--小试SVM算法ml 总感觉自己停留在码农的初级阶段,要想更上一层,就得静下心来,好好研究一下算法的东西.OpenCV作为一个计算机视觉的开源库,肯定不会只停留在数字图 ...

最新文章

  1. 特斯拉FSD车端感知解析
  2. 计算机网络---个人笔记整理
  3. 看!那全球最伟大的人工智能女性科学家们!
  4. 还有王法吗?美国联邦调查局开发人脸识别系统,数据源涉及公民隐私
  5. 投资学习网课笔记(part6)--基金第六课
  6. DVS/DVR常见的监控名词
  7. Equations HDU - 1496(哈希或三层for循环)求满足公式有多少种情况
  8. 将你的Vim 打造成轻巧强大的IDE
  9. 便利蜂发布《白领早餐报告》:仅5成白领每天吃早餐
  10. Mysql数据备份与mysqldump增量备份
  11. 第四百零四天 how can I 坚持
  12. 使用Jflash给华大半导体的MCU烧录程序
  13. Lambda表达式与Stream
  14. 0033__PDM,全称为 Persepolis Download Manager
  15. Android重启App
  16. Bigwig 可视化用 tackPlotR 试试看?
  17. 在计算机术语中 将ALU控制器和,计算机组成原理试管理-题集
  18. 【Ubuntu】【Linux】命令卸载软件
  19. 40篇最受网友欢迎的web前端HTML精选文章合集
  20. ros构建机器人运动学模型_ROS环境下机器人仿真模型构建方法研究.doc

热门文章

  1. 张一鸣:我用排除法选工作和择偶
  2. 通信系统中dB、dBm、dBFS、dBi的含义
  3. 测试如何保证产品质量/如何保障测试效率?
  4. 几款免费在线甘特图工具
  5. 数据集标注文件JSON格式简析
  6. DataGrip 2022.2.2 Unknown column ‘generation_expression‘ in ‘field list‘
  7. 软甲架构设计软件_几种常用软件架构设计指南
  8. 正则表达式过滤url请求
  9. 遭遇战(特长生准备)
  10. 删除`BST`的节点