gpt4 book ai didi

node.js - 我可以将变量传递给 node.js 中的 cluster.fork 吗?

转载 作者:行者123 更新时间:2023-12-02 03:39:47 25 4
gpt4 key购买 nike

所以现在我有一堆聊天机器人,我使用包装器将每个聊天机器人作为子进程启动。它 fork 一个配置文件。然而,由于每个机器人都有一个网站,这意味着 express 必须在每个机器人的唯一端口上运行。我想让所有的机器人都在同一个端口上运行网络服务器。这让我开始关注集群而不是 child 。

我目前正在使用 child.fork(config.js); 来生成机器人,它的工作情况和预期的一样好。

但是有没有办法将配置变量传递给 cluster.fork,以便每个工作人员都可以使用自己的登录凭据连接到自己的聊天室?

如果可能的话,有没有办法像子进程一样杀死/重启 worker ?

最佳答案

查看 documentation

您可以扩充您的 process.env,然后在 fork 进程中使用它。

var _ = require('lodash');
var child = require('child_process');
var env = _.clone(process.env);

env.BOT_ID = 'dalton';
child.fork('./config.js', { env: env });

我建议您在 env 中保留最少的信息,然后使用它从 JSON 文件或其他文件中获取配置。

关于node.js - 我可以将变量传递给 node.js 中的 cluster.fork 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20792354/

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