Nginx的proxy buffer参数设置

这篇具有很好参考价值的文章主要介绍了Nginx的proxy buffer参数设置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. proxy_buffering

语法:proxy_buffering on|off
默认值:proxy_buffering on
上下文:http,server,location

作用:该指令开启从后端被代理服务器的响应body缓冲。
    如果proxy_buffering开启,nginx假定被代理的后端服务器会以最快速度响应,并把内容保存在由指令 proxy_buffer_size 和 proxy_buffers 指定的缓冲区里边.
    如果响应body无法放在内存里边,那么部分内容会被写到磁盘上。
    如果proxy_buffering被关闭了,那么响应body会按照获取body的多少立刻同步传送到客户端。nginx不尝试计算被代理服务器整个响应body的大小,nginx能从服务器接受的最大数据,是由指令 proxy_buffer_size指定的。
    对于基于长轮询(long-polling)的Comet 应用来说,关闭 proxy_buffering 是重要的,不然异步响应将被缓存导致Comet无法工作。
    但是无论proxy_buffering是否开启,proxy_buffer_size都是生效的

2. proxy_buffers

语法:proxy_buffers  数量  size
默认值:proxy_buffers 256 8k
上下文:http,server,location

作用:设置存储被代理服务器响应的body所占用的buffer个数和每个buffer大小。
    具体的意思是说,开辟256个长度为8k大小的read_buf用来存储body,当然不是连接建立初始化时就开辟256个,而是当当前buf不够存响应body时才会新申请一个,最多申请256个buf。

3. proxy_buffer_size

语法:proxy_buffer_size size
默认值:proxy_buffer_size 4k/8k
上下文:http,server,location

作用:Nginx使用该大小申请read_buf,即大小指定了 upstream header 最大长度,如果响应头超过了这个长度,Nginx会报upstream sent too big header错误,然后client收到的是502。

4. proxy_busy_buffer_size

语法:proxy_busy_buffer_size  size
上下文:http,server,location

作用:proxy_busy_buffers_size不是独立的空间,他是proxy_buffers和proxy_buffer_size的一部分。
    nginx会在没有完全读完后端响应就开始向客户端传送数据,所以它会划出一部分busy状态的buffer来专门向客户端传送数据(建议为proxy_buffers中单个缓冲区的2倍),然后它继续从后端取数据。
    proxy_busy_buffer_size参数用来设置处于busy状态的buffer有多大。

1)如果完整数据大小小于busy_buffer大小,当数据传输完成后,马上传给客户端;
    2)如果完整数据大小不小于busy_buffer大小,则装满busy_buffer后,马上传给客户端;

5. proxy_temp_path

语法:proxy_temp_path  path [level1 level2 level3]
默认值:proxy_temp_path proxy_temp
上下文:http,server,location

作用:定义proxy的临时文件存在目录以及目录的层级。

6. proxy_max_temp_file_size

语法:proxy_max_temp_file_size size;
默认值:proxy_max_temp_file_size 1024m;
上下文:http, server, location

作用:设置临时文件的总大小

7. proxy_temp_file_wirte_size

作用:设置同时写入临时文件的数据量的总大小。通常设置为8k或者16k。文章来源地址https://www.toymoban.com/news/detail-481727.html

到了这里,关于Nginx的proxy buffer参数设置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MySQL - Buffer Pool

    Buffer Pool 主要用于缓存数据库表的数据页,以提高数据库的读取性能: 缓存数据页 :Buffer Pool 是 MySQL 中用于缓存数据页的内存区域。数据页通常包含数据库表的数据,如行记录等。当查询或读取数据时,MySQL会首先查看Buffer Pool中是否已经缓存了相应的数据页。如果数据页在

    2024年02月07日
    浏览(40)
  • Buffer源码

    首先 Buffer 是一个能存储基本数据类型的容器(除了 Boolean 类型),从 java.nio 包的继承结构就能看出来。 Java中的Buffer类是一个抽象类。Buffer类提供了一种将数据存储在内存中的方式,并提供了一些操作数据的方法。Buffer类可以存储不同类型的数据,并且可以方便地进行读取

    2024年02月12日
    浏览(25)
  • 04-Buffer的使用

    Buffer和二进制 对于前端开发来说,通常很少会和二进制打交道,但是对于服务器端为了做很多的功能,我们必须直接去操作其二进制的数据;所以Node为了可以方便开发者完成更多功能,提供给了我们一个类Buffer,并且它是全局的。 1.Buffer中存储的是二进制数据,那么到底是

    2024年02月10日
    浏览(31)
  • Protocol Buffers教程

    Protocol Buffers教程 Protocol Buffers简介 下载安装Protocol Buffers编译器 编写第一个protobuf文件,并编译成go文件 Protocol Buffers定义消息类型 Protocol Buffers基本数据类型 Protocol Buffers枚举类型 Protobuf生成的go源码分析 Protobuf序列化和反序列化 protobuf和json相互转换 在protobuf中定义服务

    2024年02月09日
    浏览(51)
  • Buffer(缓冲)、Cache(缓存)

    Buffer 用途:缓冲通常用于临时存储数据,以平衡不同速度的数据传输过程直接的差异。它可以用来解决数据传输速度不匹配的问题。 例如: 当您在观看视频时,视频播放器会缓冲一段时间的视频数据,以便在网络速度慢或不稳定的情况下也能够流畅的播放 用完之后,就清除

    2024年02月03日
    浏览(48)
  • MySQL中的Buffer Pool

            Buffer Pool是数据库的一个内存组件,里面缓存了磁盘上的真实数据,然后我们的Java系统对数据库执行的增删改操作,其实主要就是对这个内存数据结构中的缓存数据执行的。我们先来看一下下面的图,里面就画了数据库中的Buffer Pool内存组件。         接着我

    2024年02月11日
    浏览(52)
  • A-Buffer简介

    A-Buffer是一种图形学(渲染方向)上的用于可见面分析(Visble Surface Detection)的技术。 可见面分析最常见的技术有以下三种: Z-Buffer 算法(或者叫 Depth-Buffer 算法) Back-Face Detection方法,该方法用于剔除不可见(反方向的)面 A-Buffer 方法,也是本文要介绍的方法。 A-Buffer是Z-Buffer方

    2024年02月08日
    浏览(28)
  • BBR 对 buffer 的侵占

    BBR 声称 anti-bufferbloat 且内置状态机有主动 drain,所以题目中使用了 “侵占”,也可以用 “吞占”。 BBR ProbeBW ProbeUP 阶段以 1.25x 的增益加速,退出条件:inflight = 1.25 * maxbw * minrtt。 BBR ProbeBW Drain 阶段以 0.75x 的增益降速。 单流场景下,当 bw full,即使 buffer 排队 maxbw 亦不再增

    2023年04月19日
    浏览(31)
  • Node.js:Buffer基础

    在Node.js中,Buffer类是用于处理二进制数据的实用工具。它是一个全局对象,可以在所有模块中访问,而无需使用 require 引入。 更多请查看Node.js中文文档 可以使用以下方法之一来创建一个新的Buffer对象: 使用字符串创建: 使用数组创建: 使用Buffer.alloc创建指定大小的Buffe

    2024年02月09日
    浏览(39)
  • ADC前BUFFER(跟随器)作用

    实际上就是一个跟随器,可以由运放实现,或者一个射极跟随器(共集放大电路) 作用:通过加了跟随器,增大了输入电阻减小了输出电阻(提高了驱动能力),防止ADC内部的一些负载如寄生参数、保持电路跟输出电阻分压,导致最后给到ADC的电压降低 参考文档: 运算放大

    2024年02月11日
    浏览(19)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包