深入浅出 -- 系统架构之负载均衡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搭建,毕竟可以节省一台文件服务器资源。但如若文件上传/下载较为频繁,那么还是建议额外搭建文件服务器,并将上传/下载功能交由后端处理。

相关推荐
福大大架构师每日一题2 小时前
nginx 1.29.2 发布:AWS-LC 支持、QUIC及SSL优化等重要更新
nginx·ssl·aws
金色天际线-6 小时前
nginx + spring cloud + redis + mysql + ELFK 部署
redis·nginx·spring cloud
帅帅梓18 小时前
nginx访问控制 用户认证 https
运维·nginx·https
武子康19 小时前
Java-145 深入浅出 MongoDB 基本操作详解:数据库查看、切换、创建集合与删除完整教程
java·数据库·sql·mysql·mongodb·性能优化·系统架构
谱写秋天1 天前
软考-系统架构设计师 软件系统质量属性详细讲解
系统架构·软考架构师
张较瘦_1 天前
从零学会绘制系统架构图:目的、思路与实操指南
架构·系统架构·软件工程
谱写秋天1 天前
软考-系统架构设计师 软件架构复用详细讲解
系统架构·软考架构师
博一波1 天前
软考高级-系统架构设计一些概念的串联
微服务·架构·系统架构
谱写秋天1 天前
软考-系统架构设计师 系统架构评估详细讲解
系统架构·软考架构师
有谁看见我的剑了?1 天前
k8s ingress-nginx 学习
学习·nginx·kubernetes