我在线程阻塞算法上有个小问题。
我有一条路径,可以生成一个带有巨大文件的zip。
流程的工作方式如下: GetUrls > ObtainHugeSizeBuffer > GenerateZIP > UploadZIPToCloud
我不能修改express-timeout
模块的超时响应默认时间为2分钟。我还试图打破.nextTick()
函数中的漏洞。
我甚至试图查看排队,但我认为这不适用于这种情况。
你们知道如何延长响应时间吗?-我只需要一条路。
发布于 2017-10-30 10:26:50
// start the server
const server = app.listen(8080);
// increase the timeout to 4 minutes
server.timeout = 240000;
这是扩展服务器超时的最简单方法,但它会影响到一切,而不仅仅是一种方法。
在您的情况下(您不只是在特定的路线上使用):
'use strict';
const ms = require('ms');
const express = require('express');
const router = express.Router();
router.route('/upload-files')
.post(
setConnectionTimeout('12h'),
require('./actions/upload-files').responseHandler
);
function setConnectionTimeout(time) {
var delay = typeof time === 'string'
? ms(time)
: Number(time || 5000);
return function (req, res, next) {
res.connection.setTimeout(delay);
next();
}
}
exports.router = router;
不是我的代码,是在这个头上找到的:Node Express specific timeout value per route
你需要更好地搜索:)
https://stackoverflow.com/questions/47012876
复制相似问题