我有这个节点应用程序运行在一个NGINX反向代理后面。我的节点应用程序功能是下载一个大的XLS文件,大约消耗80-120秒。它在本地工作没有NGINX,但当我使用NGINX时,它似乎只是挂起,并给我超时错误。
我使用MongoDB和Mongoose作为Node应用程序中的数据库,它将查询数据库以下载XLSX
下面是NGINX配置的一部分:
keepalive_timeout 70;
client_max_body_size 16m;
location / {
gzip on;
gzip_min_length 1100;
gzip_buffers 4 32k;
gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/x-javascript application/json application/xml application/rss+xml font/truetype application/x-font-ttf font/opentype application/vnd.ms-fontobject image/svg+xml;
gzip_vary on;
gzip_comp_level 6;
proxy_pass http://indorelawan-80;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Request-Start $msec;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;
}
正如你所看到的,它使用proxy_send_timeout和proxy_read_timeout 600秒。当我在本地(没有NGINX)尝试它时,它将下载XLS大约83秒左右。但是,在使用NGINX的生产中,它将停止并返回超时。有什么方法可以修复这个问题吗?
1条答案
按热度按时间uurity8g1#
没关系,我转而使用像BullMQ这样的队列。