gpt4 book ai didi

Node.js 服务器 GET 到单独的 API 在使用几个小时后失败

转载 作者:太空宇宙 更新时间:2023-11-03 22:41:54 25 4
gpt4 key购买 nike

在我的 Node 站点中,我调用了一个使用标准 http get 构建的 Restful API 服务。经过几个小时的通信成功工作后,我发现请求停止发送,它只是等待并最终超时。

正在调用的 API 仍然可以很好地接收来自其他地方的请求,但是当从站点发送请求时,它不会到达 API。

我尝试过使用stream.pipe、util.pump并将文件写入文件系统。

我使用的是 Node 0.6.15。我的站点和正在调用的服务位于同一服务器上,因此正在调用本地主机。内存使用率约为 25%,CPU 平均使用率约为 10%。

问题出现一段时间后,我开始使用 request模块,但我得到相同的行为。它在失败之前进行的调用次数似乎在 5 到 100 之间变化。最后我必须重新启动站点而不是 api 才能使其再次工作。

网站中的代码大致如下:

var Request = require('request');
downloadPDF: function(req, res) {
Project.findById(req.params.Project_id, function(err, project) {
project.findDoc(req.params.doc_id ,function(err, doc) {
var pdfileName;
pdfileName = doc.name + ".pdf";
res.contentType(pdfileName);
res.header('Content-Disposition', "filename=" + pdfileName);
Request("http://localhost:3001/" + project._id).pipe(res);
});
});
}

我对可能发生的事情很了解。

最佳答案

您是否尝试增加agent.maxSockets,或禁用http.Agent功能?默认情况下,最新的 Node 版本使用套接字池进行 HTTP 客户端连接,这可能是问题的根源 http://nodejs.org/api/http.html#http_class_http_agent

关于Node.js 服务器 GET 到单独的 API 在使用几个小时后失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10253529/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com