NodeJS并发DB I/O操作在mongoDB中使内存冻结或完全占用于一个进程。当更多并发写入/读取发生在前面提到的体系结构中时,我无法读取DB查询,我在这里附加在驱动器链接中。当发生高负载时,三个服务中的任何一个都会发生内存冻结。
发布于 2022-10-14 04:02:48
很难仅仅通过看到一个图像来说明锁定的原因。但是,它看起来像您的查询锁表,直到查询完成。如果是,那么尝试使用async
和await
。
这是一个来自mongodb文档的代码示例
async function run() {
...
try {
res = await collection.updateOne(
{ name: "Mount McKinley" },
{ $set: { meters: 6190 } },
);
console.log(`Updated ${res.result.n} documents`);
} catch (err) {
console.error(`Something went wrong: ${err}`);
}
}
https://stackoverflow.com/questions/74059567
复制相似问题