nodejs做成服务

一、先弄到两个小工具(微软自已出的小工具):
srvinstw.exe
srvany.exe
本文附件里有这两个工具
http://download.youkuaiyun.com/detail/shaoshuaiqilin/9504443

二、准备好要作为服务启动的批处理文件,我们作个简单的例子 test.cmd:
time /T >> C:\result.txt
该命令是在启动时在C盘生成一文件result.txt,并把当前时间写入该文件


三、开始处理
直接使用srvinstw.exe工具是没有办法把批处理文件注册为服务的,需要srvany.exe工具帮忙。srvany.exe从文件名就可以知道他的作用: srv + any ,就是把任何东西都当作NT服务来运行。


1、添加系统服务:
运行“srvinstw.exe”
->安装服务->本地主机->服务名称:MySvcCmd
  接着要为该服务选择执行文件,这里要注意不能直接选择test.cmd,因为在设计它时没有考虑到当作系统服务使用。
现在使用“srvany.exe”可以解决这个难题,点击“Browse”按钮找到“srvany.exe”文件。-> 系统自带服务:这样该程序就被定义为独立进程运行状态了,点击“下一步”按钮,选择“System Account”单选项。同时,指定该服务以“Automatic”(自动)方式运行,免去手工启动的麻烦。最后,点击“完成”按钮即可。
2、修改注册表
  完成了系统服务的添加操作后,“MySvcCmd”服务还不能正常运行,必须修改注册表。
打开注册表编辑器,展开“HKEY_LOCAL_MACHINE\SYSTEM\currentcontrolset\services”,找到 “MySvcCmd”项目,在该项下面新建一个名为“Parameters”的项目,接着在“Parameters”项下新建一个类型为字符串值的 “application”子键,该键值为瑞星个人网络防火墙主程序“c:\test.cmd”的磁盘路径。
3、启动刚才新增的服务:
net start MySvcCmd
此时可以看到在C盘根目录下会看到新生成的result.txt文件,里面是当前时间。
PM2 是一个流行的 Node.js 进程管理工具,它可以用来在生产环境中管理和保持应用程序的持续运行。虽然 PM2 主要是为 Unix 系统设计的,但也可以在 Windows 系统中使用。要将 PM2 做成 Windows 服务,可以使用一些第三方工具,如 NSSM(Non-Sucking Service Manager)。 以下是使用 NSSM 将 PM2 配置为 Windows 服务的步骤: 1. **安装 Node.js 和 PM2**: 确保你已经安装了 Node.js 和 PM2。如果还没有安装,可以使用以下命令进行安装: ```bash npm install -g pm2 ``` 2. **下载并安装 NSSM**: 从 [NSSM 官方网站](https://nssm.cc/download) 下载适合你系统的版本,并将其解压到一个目录中,例如 `C:\nssm\`. 3. **安装 PM2 为 Windows 服务**: 打开命令提示符(以管理员身份运行),然后导航到 NSSM 的目录。例如: ```bash cd C:\nssm\win64 ``` 4. **使用 NSSM 安装服务**: 使用以下命令将 PM2 安装为一个服务: ```bash nssm install PM2 ``` 5. **配置服务**: 在弹出的 NSSM 界面中,进行以下配置: - **Path**:输入 Node.js 的路径,例如 `C:\Program Files\nodejs\node.exe` - **Startup directory**:输入你的应用程序所在的目录,例如 `C:\myapp` - **Arguments**:输入 PM2 的启动命令,例如 `C:\Users\YourUsername\AppData\Roaming\npm\pm2.cmd start app.js` 6. **安装服务**: 点击“Install”按钮完成服务的安装。 7. **启动服务**: 你可以通过服务管理器(services.msc)找到刚刚安装的 PM2 服务,并启动它。 通过以上步骤,你的 PM2 应用程序将会作为一个 Windows 服务运行,并且会在系统启动时自动启动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值