node.js - NodeJS,CPU密集型操作进行得很顺利,我该如何调试?
问题描述
const runDailyUpdate = async () => {
await fetchSomeData()
.then(doSomeCalculations)
.then(storeStuffInDb)
.catch((err) => {
console.log(err);
});
console.log("daily update complete");
};
我让这个功能每天运行一次。大约需要一个小时才能完成。有时,它只是停在中间。我在任何地方都遇到了错误,console.logs。没有错误信息或什么都没有。内存不缺。
我该如何调试呢?把它放在工人身上会有帮助吗?如果是这样,我如何将此代码与工人一起使用?
解决方案
如果您还没有超时,可能值得添加某种超时 - 您可以使用 bluebird 之类的东西Promise.race
:
Promise.race([
runDailyUpdate(),
Promise.delay(TWO_HOURS).then(() => console.log("Timed out!")),
]);
推荐阅读
- android - 无法在可展开列表视图的“onGroupCollapse”中获得子视图访问权限
- android - Android 应用程序中的回收站视图在第 9 个条目时崩溃
- python - 更改 python suds 调用的 SOAP 主体
- python - 在 Python 中循环文件
- python - 提取 Python 数据帧列 - 系列与数据帧检索
- java - 当用户滑动到第一个片段时,我如何祝酒
- angular - 如何在 ag-grid v18 中禁用执行 AND/OR 逻辑的列过滤器
- emulation - 无法在模拟器中创建集合
- node.js - Heroku、NodeJs 和 React 问题:SCRIPT5007:无法获取未定义或空引用的属性“应用”
- excel - excel的vba代码进行搜索,替换不同列上的相应数据