我注意到,当有人向由Nginx代理的Apache网站发送大文件时,Nginx机器上的磁盘使用率就会上升。与Nginx机器的磁盘大小相比,当有人上传文件时,它特别引人注目。如果有人上传了500 VM的文件,而Nginx只有10 VM的驱动器,那该怎么办呢?考虑到这是我们用来发送VM映像(.vmdk或.ova文件)的私有云,通常有10+千兆字节,这不是那么抽象的场景。
我已经在用:
proxy_buffering off;
proxy_no_cache 1;在http范围内。但它似乎不影响上传的文件(仅下载的文件)。可以禁用POST缓存吗?
发布于 2019-01-31 19:38:55
在它的代理缓存中,nginx默认不缓存任何东西。它甚至没有配置它。因此,如果您已经配置了它,并且配置了缓存,那么您应该知道如何禁用它,这并不是讽刺:既然您要求这样做--您的磁盘使用率可能会因为其他原因而增加,而不是声明;而不是缓存。Nginx可以在磁盘上缓冲过多的POST数据,但是一旦传输结束,它就会被删除。
另一种可能的情况是,您有一个其他人已经配置的web服务器。然后,您应该检查proxy_cache <zonename>指令。但我怀疑后者是否有效。
您可以通过发出一系列du -h -d 1 /命令,在每次迭代中用更具体的感兴趣的路径替换/,从而很容易地确定磁盘的消耗。
https://serverfault.com/questions/951739
复制相似问题