节点计划在不同的进程上运行

时间:2019-10-22 11:00:47

标签: node.js

我正在使用node-schedule与nodejs进行cron工作。这是我的代码:

import '../config';
import schedule from 'node-schedule';

import { startAssignment, closeAssignment } from '../course/schedule';

schedule.scheduleJob('*/1 * * * *', startAssignment);
schedule.scheduleJob('*/1 * * * *', closeAssignment);

我想知道两个计划的作业是在不同的进程上运行还是在同一进程上运行?我尝试使用

在Linux上查看
  

sudo ps -aux

它给出了这个:

  

22032 0.0 0.0 4632 864点/ 2 S + 17:47 0:00 / bin / sh -c   NODE_PATH =。 babel-node app / schedule / index.js

表示它正在同一进程上运行。那么有什么办法可以使它们在具有不同pid的不同进程上运行?

为什么我需要它们在具有不同 pid 的不同进程上运行?因为当一个进程启动时,我想检查是否有一个运行相同的 pid 的类似进程,所以我停止了它们以防止重复的进程,这可能会占用过多的资源服务器的

谢谢。我感谢任何类型的文档。

1 个答案:

答案 0 :(得分:1)

您可以将fork用于节点中的多个进程。

hook.Add( "PlayerSay", "GmodToDiscord", function( player, text, team )
    if ( string.sub( string.lower( text ), 0, 7 ) == "/discord" ) then -- Makes message lowercase to be read by the program.
        local file = io.open("message.txt", "w") -- Opens a text file in write mode.
        file:write(message) -- Pastes in the message.
        file:close() -- Closes the text file.
    end
end)

https://itnext.io/multi-threading-and-multi-process-in-node-js-ffa5bb5cde98