Android Azure VM上的NodeJS脚本

Android Azure VM上的NodeJS脚本,android,node.js,mongodb,azure,ssh,Android,Node.js,Mongodb,Azure,Ssh,我已经在Azure上安装了一个Linux虚拟机,其中安装了NodeJS和MongoDB 然后我有一个需要持续运行的单节点脚本(它接收并发送从Android应用程序生成的Google推送通知,并相应地保存到我的MongoDB) 到目前为止,我能让它运行的唯一方法是在本地机器上通过ssh连接,使用“node gcm.js”运行脚本,这很好。但当我断开与服务器的连接时,脚本停止运行。。。那么,如何在不需要连接本地机器的情况下运行它呢?只启动一次的cron作业?还是我完全错了?根据我的经验,有一种简单的

我已经在Azure上安装了一个Linux虚拟机,其中安装了NodeJS和MongoDB

然后我有一个需要持续运行的单节点脚本(它接收并发送从Android应用程序生成的Google推送通知,并相应地保存到我的MongoDB)


到目前为止,我能让它运行的唯一方法是在本地机器上通过ssh连接,使用“node gcm.js”运行脚本,这很好。但当我断开与服务器的连接时,脚本停止运行。。。那么,如何在不需要连接本地机器的情况下运行它呢?只启动一次的cron作业?还是我完全错了?

根据我的经验,有一种简单的方法可以让当前进程作为后台作业运行

以下是步骤

  • 在本地计算机上通过ssh连接,然后运行脚本
    节点gcm.js
  • 输入
    Ctrl+Z
    停止当前进程,然后您将看到下面的
    N
    下面的
    [N]+
    编号是作业id

    ^Z
    [N] +停止节点gcm.js

  • 输入
    bg%N
    以将
    N
    作业从停止的前台作业转换为后台作业

  • 输入
    disown-h%N
    从当前shell的作业列表中删除
    N
    作业,然后在关闭当前ssh连接后进程将运行
  • 关于这些linux命令的更多细节,我认为您可以通过搜索引擎轻松获得


    希望有帮助。

    在后台运行脚本有很多方法,包括但不限于cron作业、服务和屏幕等。但我建议将此问题发布到适当的论坛,如“谢谢,认为屏幕会让我做我需要的事情”。以及关于使用正确论坛的要点。