gpt4 book ai didi

file-upload - 在nginx中禁用请求缓冲

转载 作者:行者123 更新时间:2023-12-04 06:09:52 24 4
gpt4 key购买 nike

似乎nginx在将请求传递到updstream服务器之前先对其进行缓冲,尽管对我而言,在大多数情况下还可以,但是这很糟糕:)

我的情况是这样的:

我将nginx用作代理3个不同服务器的前端服务器:

  • 使用典型的PHP应用程序apache的
  • 我用python和gevent构建的
  • shaveet(开源 cometd 服务器)
  • 使用gevent再次构建的文件上传服务器,用于代理将文件上传到机架空间云文件
    同时接受来自客户端的上传。

  • #3是问题,现在我所拥有的是nginx缓冲所有请求,然后将其发送到文件上传服务器,该服务器又将其发送到cloudfiles,而不是在获取每个块时将其发送(这样使上载速度更快)我可以将6-7MB/s推送到cloudfiles)。

    我使用nginx的原因是,如果无法使用一个IP具有3个不同的域,则必须将fileupload服务器移至另一台计算机。

    最佳答案

    根据Gunicorn的建议,他们建议您使用nginx实际缓冲客户端并防止lowloris攻击。因此,这种缓冲可能是一件好事。但是,我确实在我提供的有关删除代理缓冲区的链接的下方看到一个选项,尚不清楚它是否在nginx中,但看起来确实如此。当然,这是在假设您正在运行Gunicorn的前提下,而您没有。也许它对您仍然有用。

    编辑:我做了一些研究,并且在nginx中禁用缓冲区是针对出站的长轮询数据。 Nginx在其wiki站点上指出,入站请求在发送到上游之前必须被缓冲。

    "Note that when using the HTTP Proxy Module (or even when using FastCGI), the entire client request will be buffered in nginx before being passed on to the backend proxied servers. As a result, upload progress meters will not function correctly if they work by measuring the data received by the backend servers."

    关于file-upload - 在nginx中禁用请求缓冲,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5963080/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com