深入浅出 -- 系统架构之负载均衡Nginx大文件传输配置

一、Nginx大文件传输配置

在某些业务场景中需要传输一些大文件,但大文件传输时往往都会会出现一些Bug,比如文件超出限制、文件传输过程中请求超时等,那么此时就可以在Nginx稍微做一些配置,先来了解一些关于大文件传输时可能会用的配置项:

配置项 释义
client_max_body_size 设置请求体允许的最大体积
client_header_timeout 等待客户端发送一个请求头的超时时间
client_body_timeout 设置读取请求体的超时时间
proxy_read_timeout 设置请求被后端服务器读取时,Nginx等待的最长时间
proxy_send_timeout 设置后端向Nginx返回响应时的超时时间

在传输大文件时,client_max_body_size、client_header_timeout、proxy_read_timeout、proxy_send_timeout这四个参数值都可以根据自己项目的实际情况来配置。

上述配置仅是作为代理层需要配置的,因为最终客户端传输文件还是直接与后端进行交互,这里只是把作为网关层的Nginx配置调高一点,调到能够"容纳大文件"传输的程度。

当然,Nginx中也可以作为文件服务器使用,但需要用到一个专门的第三方模块nginx-upload-module,如果项目中文件上传的作用处不多,那么建议可以通过Nginx搭建,毕竟可以节省一台文件服务器资源。但如若文件上传/下载较为频繁,那么还是建议额外搭建文件服务器,并将上传/下载功能交由后端处理。

相关推荐
m0_748238784 小时前
Nginx 负载均衡详解
运维·nginx·负载均衡
王佑辉5 小时前
【系统架构设计师】需求工程
系统架构
m0_748254096 小时前
Nginx WebSocket 长连接及数据容量配置
运维·websocket·nginx
uesowys6 小时前
TOGAF之架构标准规范-信息系统架构 | 应用架构
系统架构
facaixxx20246 小时前
阿里云SLB负载均衡的ALB和NLB有啥区别?一个是7层一个是4层
阿里云·云计算·负载均衡
若云止水8 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_os_io_t 类型
linux·nginx·ubuntu
若云止水9 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_init_setproctitle函数
运维·nginx
忘忧人生9 小时前
项目设置内网 IP 访问实现方案
nginx·部署·防火墙·内网访问
m0_7482368311 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
m0_7482522312 小时前
Nginx 部署 Vue 指南
运维·vue.js·nginx