在 SailsJs 中保持活动状态

Keep-Alive in SailsJs

我想禁用从负载均衡器到我的 sailsjs 服务器的 TCP 连接的保持活动状态。所以基本上我想关闭 HTTP keep-alive。现在我的服务器响应 header

connection →keep-alive

我想知道我是否需要在 sails 服务器中调整特定设置以消除此问题?

从 sails 方面你有两个选择,都包括设置 HTTP header 来关闭连接而不是默认的 keep-alive 。

选项 1: 通过在实际响应之前添加以下代码,在控制器级别设置 header。这提供了更大的控制权,因为您可以决定哪个特定控制器关闭连接:

res.set("Connection", "close");

选项 2: 或者,您可以在中间件级别为所有连接设置 header。

为此,打开 config/http.js,在中间件 object 中创建一个新函数来设置 header 例如。 setHeaderClose,然后取消订单数组的注释并添加对上述函数的引用。

order: [
    'setHeaderClose',
    'startRequestTimer',
    'cookieParser',
    'session',
    'myRequestLogger',
    'bodyParser',
    'handleBodyParserError',
    'compress',
    'methodOverride',
    'poweredBy',
    '$custom',
    'router',
    'www',
    'favicon',
    '404',
    '500'
],

setHeaderClose: function(req, res, next) {
    res.set("Connection", "close");
    next();
}