日期:2014-05-16  浏览次数:20402 次

注册nodejs程序为windows服务

之前我运行nodejs程序的话,都是在cmd命令里输入类似命令启动的:

node D:\NodeJs\demo_express\microblog\app.js

cmd命令关闭后,nodejs程序也会自动关闭。在生产环境(开发、调试程序)中,这种方法完全可以满足需求,但是在发布环境中,最好能配置成服务,这样可以避免因服务器重启、窗口非法关闭等原因造成的不良后果。

下面是我尝试的两种解决方案:

1.把cmd命令保存在bat文件中,然后把bat文件添加到 程序->启动 里

  • 优点:实现起来简单,容易理解。
  • 缺点:虽然服务器重启后nodejs照样能够启动,但是因为有cmd命令窗口运行着,如果被人非法关闭的话,nodejs程序也会自动关闭,因此这种方法治标不治本。

2.windows服务方式

  • 优点:不怕重启,也没有cmd命令窗口
  • 缺点:实现起来相对复杂,不太容易理解

实现步骤:

1>新建一个bat文件,文件名为run.bat,输入node D:\NodeJs\demo_express\microblog\app.js(命令视情况自己修改)然后保存

2>新建一个服务,参考 将node.js程序注册为windows服务,把第5步中Application属性配置为bat文件所在的路径


3.在windows服务列表里找到该服务,确保启动类型为自动,然后点击启动,发现没有cmd命令框。尝试在电脑注销重新登录后,发现该服务能够正常启动并且nodejs程序可以正常运行。自此,说明该服务配置成功了


注:对于步骤2的操作,如果有什么疑问的话,欢迎留言