【发布时间】:2020-07-16 02:51:22
【问题描述】:
所以我正在制作一个基于文档的数据库库,我担心一些事情。 例如,当假设我几乎同时收到 2 个使用数据库的请求时,
express.post("/storeSomeText/:text", (request, response) => {
fs.appendFile("filePath", request.params.text, () => {
response.send("success");
});
})
因此,如果我几乎同时收到 2 个请求,那么第二个请求处理程序是否有可能在第一个请求处理程序之前完成?
如果是这样,我该如何避免这种情况发生?
【问题讨论】:
-
这可能会发生,您需要某种锁定/同步。一个缓慢但有效的方法是有一个事务的概念,以及每个事务的全局锁定。