gpt4 book ai didi

node.js - PM2 NodeJS 集群 - 使用 pm2 时是否应该考虑同步

转载 作者:太空宇宙 更新时间:2023-11-03 23:04:08 26 4
gpt4 key购买 nike

我的 Express 服务器做了一个非常简单的工作 - 将请求 url 保存到文件中(通过 fs.appendFile)。

我认为不使用 pm2 时它可以正常工作,因为它只有一个进程,因此没有其他进程/线程同时保存同一文件。

但是使用pm2时,不知道会不会出现两个进程同时写入同一个文件的情况?谢谢。

最佳答案

When you use pm2 on cluster mode, request routing will happen using Round Robin algorithm. That means the cluster master accepts all the incoming connections and routes them to the child processes (one request to one child process).

因此,一个请求将被路由到一个子进程,并且同一请求不会被另一进程处理。

对于上述情况,当您收到来自两个不同客户端的两个不同请求时,它们将由两个不同的进程处理。

只要您有创建唯一文件名的逻辑,即使同时处理请求,您也不会遇到任何问题。

仅当您尝试通过两个不同的进程使用相同的文件名写入文件时,才会遇到问题。

如果您从不同的客户端使用不同的文件名编写不同的文件,那么这不会成为问题。

注意:由于来自一个客户端的请求将由一个进程处理,因此两个或多个进程不会处理同一请求,也不会两次写入同一文件。

如果您从不同的客户端使用相同的文件名写入不同的文件,就会出现此问题。

希望你理解:-)

关于node.js - PM2 NodeJS 集群 - 使用 pm2 时是否应该考虑同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40054417/

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