node.js - Node-Schedule 在不同的进程上运行
问题描述
我正在使用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运行,所以我停止它们以防止可能占用服务器资源过多的重复进程。
谢谢你。我欣赏任何类型的文件。
解决方案
您可以对节点中的多个进程使用 fork。
const { fork } = require('child_process');
https://itnext.io/multi-threading-and-multi-process-in-node-js-ffa5bb5cde98
推荐阅读
- assembly - 在 ARMv7a 上与 Neon 进行 64 位签名比较支持 CMGT 的最有效方法是什么?
- c# - c# core Microsoft.Extensions.Logging 和日志配置
- typescript - 打字稿中合并对象的类型应该是什么?
- python - 2个数据帧之间的经度和纬度距离计算
- c# - 表单数据未绑定到具有泛型类型的视图模型
- php - 如何在 nodejs 服务器中检查带有数字类型的 PHP MD5 哈希
- amazon-web-services - 从步骤函数调用中获取所有 Lambda 执行 ID
- swiftui - 是否可以垂直翻转 SwiftUI 视图?
- python - 使用来自另一个文件的文本创建一个列表
- swift - 架构 x86_64 clang 的 35 个重复符号:错误:链接器命令失败,退出代码为 1