【问题标题】:How to start nodejs in background and restart all 10 minutes如何在后台启动nodejs并重新启动所有10分钟
【发布时间】:2016-04-25 01:42:18
【问题描述】:

^主题

我现在有 Debian 8。

我有 2 个节点文件我想一起运行这 2 个文件

程序 1 应该启动 nodejs /home/Bots/server/server.js 在此之后我需要从 10 秒开始超时。 程序 2 应在程序 1 启动 10 秒后启动。 nodejs /home/Bots/f.js

谢谢

我在这里没有发现什么工作:/

【问题讨论】:

  • 让你的机器人处理宕机的服务器并轮询直到它启动可能会更可靠,而不是尝试按特定顺序编排流程

标签: node.js debian debian-based


【解决方案1】:

我假设你的 java 标签应该是 javascript,因为看起来你在谈论 nodejs。

很难准确说出您要做什么,但您可以使用 .exec().spawn() 的子进程模块从 nodejs 中启动新进程。

因此,如果您已经有一个 nodejs 进程正在运行,您可以使用setTimeout() 和子进程模块在未来某个预定时间启动另一个进程。

例如,下面是包含在 setTimeout() 中的 child_process 文档页面的示例:

const exec = require('child_process').exec;

setTimeout(function() {
    const child = exec('cat *.js bad_file | wc -l', (error, stdout, stderr) => {
        console.log(`stdout: ${stdout}`);
        console.log(`stderr: ${stderr}`);
        if (error !== null) {
          console.log(`exec error: ${error}`);
        }
    });        

}, 10 * 1000);

【讨论】:

  • 谢谢,现在我需要一个启动脚本 :) 但我必须启动 putty,当我关闭它时,我的 nodejs 就会关闭:s
  • @CCSESD - 看起来您没有运行支持箭头功能的当前版本的 node.js。您可以更改上面的代码以使用旧样式的函数回调或升级到新版本的 nodejs。
猜你喜欢
  • 2019-06-09
  • 2021-12-26
  • 2016-01-15
  • 2021-09-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多