第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

老板讓我將node應(yīng)用程序設(shè)置成win服務(wù)??

封面

起因

  哈哈首先,先说明一下,真实问题肯定要比标题要复杂一些,我以node应用程序作为一个栗子去做演示,原理是一样的。

  那么废话不多说,我们先来看看如何去实现标题的需求呢。

  你看到这个标题是不是脑海中会浮现docker、pm2、eggjs工程自带开机自启等等。我今天分享的是另一个我觉得挺有意思的开源工具——WinSW。

什么是WinSW?

  WinSW 是一个开源工具,可以将任何可执行文件包装成 Windows 服务。它支持多种配置选项,使得管理服务变得非常灵活和方便。

  看这里——任何可执行文件,那也就是说,bat,exe等等都是符合的。

准备工作

  在开始之前,请确保你已经安装了以下软件:

  1. Node.js 和 npm(Node 包管理器)

  2. WinSW 工具

  你可WinSW 的 GitHub 页面 下载最新版本的 WinSW。

winSw下载页面

  将下载好的WinSW.exe更改你所想要的服务名,如node-demo-service.exe。

配置 WinSW

  首先,我们需要创建一个 XML 配置文件,用于定义服务的各项属性。以下是一个示例配置文件 node-demo-service.xml(和exe保持同名):

<service>

  <!-- 服务ID。它应该在整个Windows系统中是唯一的-->

  <id>node-demo-service</id>

  <!-- 在系统服务中显示的名称 -->

  <name>node-demo-service</name>

  <!-- 服务描述 -->

  <description>node express demo 服务</description>

 

  <!-- 启动可执行文件的路径 -->

  <executable>D:\Adam\installPath\nvm\v20.12.2\node.exe</executable>

  <!-- Node.js应用程序的路径 -->

  <arguments>D:\Adam\project\my-project\node-serve\app.js</arguments>



  <!-- 日志路径(如不配置,日志文件默认在可执行文件的路径),注意:要注释,不能保留空标签,启动会报错 -->

  <!-- <logpath></logpath> -->

  <!-- 日志模式 -->

  <logmode="roll-by-size">

    <sizeThreshold>10240</sizeThreshold>

    <keepFiles>8</keepFiles>

  </log>

</service>

注册服务

  1. 将下载的 WinSW 可执行文件重命名为 node-demo-service.exe,并将其放置在与 node-demo-service.xml 相同的目录下。

  2. 打开命令提示符(以管理员身份运行),切换到包含 node-demo-service.exenode-demo-service.xml 的目录。

  3. 运行以下命令注册服务:

node-demo-service.exe install

// 补充,删除服务命令
// node-demo-service.exe uninstall

  如果一切顺利,你应该会看到类似以下的输出:

2024-08-26 11:19:58,067 INFO  - Installing service 'node-demo-service (node-demo-service)'...
2024-08-26 11:19:58,081 INFO  - Service 'node-demo-service (node-demo-service)' was installed successfully.

启动和管理服务

  服务注册成功后,你可以在服务中去开启和停止服务:

windows服务

设置开机自启

  双击服务,选择自动即可。

win服务详情

运行效果

运行效果

好了附一下node代码

图片描述

// app.js
const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
    res.send('Hello World!');
});

app.listen(port, () => {
    console.log(`Server is running at http://localhost:${port}`);
});

总结

  通过使用 WinSW,我们可以轻松地将 Node.js 应用程序注册为 Windows 服务,从而实现自动启动和管理。这不仅提高了应用程序的可靠性,还简化了部署和维护过程。希望本文对你有所帮助,祝你在使用 WinSW 时一切顺利!

  关注【程序员北巷】加星标,学习更多有用知识🚀

點擊查看更多內(nèi)容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學(xué)

大額優(yōu)惠券免費領(lǐng)

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消