windows守护进程工具--nssm使用

news2024/11/17 0:52:07

一、nssm简介

nssm是一个服务封装程序,它可以将普通exe程序封装成服务,实现开机自启动,同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。

它的特点如下:

支持普通exe程序(控制台程序或者带界面的Windows程序都可以)
安装简单,修改方便
可以自动守护封装了的服务,程序挂掉了后可以自动重启
官网地址:https://nssm.cc/

二、nssm配置详解

1、下载地址

官网地址:https://nssm.cc/download

2、解压压缩包,根据系统位数选择64或32位程序

3、打开命令行,运行nssm程序

管理员权限打开命令行工具,切换到nssm.exe所在路径,运行 nssm install,打开程序配置界面

配置项说明:

Path:运行应用程序的程序

Startup directory:应用程序所在的目录

Arguments:应用运行的参数

Service name:生成服务的名称

最后点击install service 完成windows服务安装,在windows服务列表就能看到创建的服务了。

4、常用命令

nssm install servername //创建servername服务,弹出配置界面
nssm start servername //启动服务
nssm stop servername //暂停服务
nssm restart servername //重新启动服务
nssm remove servername //删除创建的servername服务
nssm edit servername//更改servername服务,弹出修改界面
nssm set servername 参数名 参数值 //设置服务参数值
sc delete servername//windows删除服务命令


直接使用windows的服务管理也可以实现服务的操作,服务右键属性 - 恢复即可设置服务挂掉重启等内容。

三、实战:将应用做成服务

1、程序说明

这里演示将net6的web项目制作成windows服务

应用的启动命令是:

dotnet WebApplication_nssm.dll --urls=http://*:8888/ --port=8888

2、安装服务

nssm install
Path:C:\Program Files\dotnet\dotnet.exe
Startup directory:D:\TechLearn\001、Tools--nssm\WebApplication_nssm\bin\Debug\net6.0
Arguments:WebApplication_nssm.dll --urls=http://*:8888/ --port=8888
Service name:webapp8888

最后点击install service 完成windows服务安装,在windows服务列表就能看到创建的服务了。

3、管理服务

(1)启动服务

D:\nssm-2.24\win64>nssm start webapp8888
webapp8888: START: 操作成功完成。

(2)关闭服务

D:\nssm-2.24\win64>nssm stop webapp8888
webapp8888: STOP: 操作成功完成。

(3)重启服务

如果服务未启动就会直接启动,启动的会重启。

D:\nssm-2.24\win64>nssm restart webapp8888
webapp8888: STOP: 服务尚未启动。
webapp8888: START: 操作成功完成。

D:\nssm-2.24\win64>nssm restart webapp8888
webapp8888: STOP: 操作成功完成。
webapp8888: START: 操作成功完成。

(4)修改服务

输入命令,修改配置,不能修改服务名

D:\nssm-2.24\win64>nssm edit webapp8888

(5)删除服务

删除有二次确认,删除之后服务就找不到了,需要重新安装

D:\nssm-2.24\win64>nssm remove webapp8888
Service "webapp8888" removed successfully!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/497796.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

每天看一个fortran文件(7)之寻找cesm边界层高度计算代码

自从我把我的代码移到了单独的F90 中,从tphysac.F90中调用后。我发现有很多的变量我没办法调用了,特别是边界层中原先已经算好的变量,比如说我想调用原来模式中的pblh,但是那是在vertical diffusion.F90中计算的,在tphysac中根本调…

基于springcloud实现的医院信息系统

访问【WRITE-BUG数字空间】_[内附完整源码和文档] 医疗信息就诊系统,系统主要功能按照数据流量、流向及处理过程分为临床诊疗、药品管理、财务管理、患者管理。诊疗活动由各工作站配合完成,并将临床信息进行整理、处理、汇总、统计、分析等。本系统包括以…

以前以为去流量大的部门是好事,能学技术,现在才知道,流量大的部门狗都不去!晚上9点才下班,一天到晚都是监控告警!...

流量大的部门好,还是流量小的部门好? 一位网友说,工作以前以为去流量大的部门是好事,能学技术;工作后才知道,流量大的部门和组,狗都不去!待在流量大的组,晚上9点起步才下…

p71 内网安全-域横向网络传输应用层隧道技术

数据来源 必备知识点: 1、代理和隧道技术区别? 代理:只是解决网络的访问问题(如:有些内网访问不到,可以用代理实现) 隧道:隧道不仅是解决网络的通信问题,更大的作用是绕过过滤&…

菜刀、蚁剑以及冰蝎三款Webshell管理工具简介

今天继续给大家介绍渗透测试相关知识,本文主要内容是菜刀、蚁剑以及冰蝎三款Webshell管理工具简介。 免责声明: 本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负! 再次强调&…

YOLO(你只需看一眼)技术通讲(基于论文与开源代码)

YOLO通讲 前言YOLO v1论文及项目地址介绍模型架构统一检测边界框的置信度类置信度 网络设计训练 模型局限总结 YOLO v2模型改进正则化批处理使用高分辨率分类器卷积化锚盒维度聚类 前言 YOLO作为现在目标检测技术中较为基础且流行的技术之一。本文将以开源者的论文与模型为基础…

UE5实现物体高亮描边效果(含UE相关源码浅析)

文章目录 1.实现目标2.实现过程2.1 UE Editor中相关源码2.2 深度值描边2.3 半透明材质处理2.4 遮挡处理2.5 视口边缘处理3.参考资料1.实现目标 在UE5中实现物体边缘高亮效果,且在被遮挡时在边缘显示不同的颜色,当到达视口边缘时,也会将该物体与视口边缘相交的部分高亮。 2.…

纯比例控制为什么会存在稳态误差,用纯增益系统举例

warning: 本文仅为个人思考,非常不严谨甚至可能会出现严重错误,请读者仔细甄别,若本文真的存在严重错误,恳请评论区纠正,我看到将会考虑修改或者删除文章 纯比例控制存在稳态误差是由其本质(控制逻辑&#…

从FPGA说起的深度学习(九)- 优化最终章

这是新的系列教程,在本教程中,我们将介绍使用 FPGA 实现深度学习的技术,深度学习是近年来人工智能领域的热门话题。 在本教程中,旨在加深对深度学习和 FPGA 的理解。 用 C/C 编写深度学习推理代码高级综合 (HLS) 将 C/C 代码转换为…

【在线OJ项目】核心技术之用户提交代码的编译运行

目录 一、认识Java进程编程 二、在线OJ核心思路 三、封装进程的执行 四、封装文件读写 五、封装用户提交代码的编译运行 一、认识Java进程编程 在之前的文章里提到了Java进程编程的相关API【JavaEE】Java中进程编程_1373i的博客-CSDN博客https://blog.csdn.net/qq_6190341…

【代码随想录】刷题Day17

1.AVLTree判断 110. 平衡二叉树 后序遍历的强化理解: 所谓后续遍历,不仅仅是一种遍历,其实它是完成了所有左右子树的递归。后续遍历能将自己所求的值返回给上层节点。这在比较中很关键,举个例子,我们能得到下边节点返…

Makefile教程(Makefile的结构)

文章目录 前言一、Makefile的结构二、深入案例三、Makefile中的一些技巧总结 前言 一、Makefile的结构 Makefile 通常由一系列规则组成,每条规则定义了如何从源文件生成目标文件。每个规则又由目标、依赖和命令三部分组成。 下面是 Makefile 规则的基本结构&…

Matlab官方的两个配色colormap补充包

目录 一、othercolor 1、使用方法 2、图示 二、slanCM 1、使用方法 2、图示 三、从matlab上下的函数如何使用 一、othercolor 下载地址:matlab_othercolor.zip 1、使用方法 不指定获取颜色个数会默认256色,举例获取[163]号彩虹色(rainbow)&…

Java阶段二Day15

Java阶段二Day15 文章目录 Java阶段二Day15复习前日知识点对象数据类型注入数组类型注入集合类型的注入p命名空间引入外部属性文件 基于XML管理beanbean的作用域bean的生命周期代码演示生命周期后置处理器处理展示基于XML的自动装配 基于注解管理bean开启组件扫描使用注解定义B…

【A200】 TX1核心 JetPack4.6.2版本如何修改DTB文件测试全部SPI

大家好,我是虎哥,很长时间没有发布新内容,主要是这段时间集中精力,研究DTB设备树的修改,以适配不同载板,同时也是专门做了一个TX1&TX2核心,双网口,可以使用SPI 扩展CAN接口的载板…

java获取resources路径的方法

我们在写程序的时候,有时候会发现代码不能正常运行,出现提示异常的问题,这就说明我们的代码没有执行完,也就是没有 resource,其实遇到这种情况,我们只需要把代码重新执行一遍即可。 在 java中是可以实现 re…

【计算机组成原理笔记】计算机的基本组成

计算机的基本组成 文章目录 计算机的基本组成冯诺伊曼计算机的特点硬件框图以运算器为核心的计算机现代计算机系统复杂性管理的方法 计算机的工作步骤存储器运算器控制器I/0 脚注 冯诺伊曼计算机的特点 五大部件组成 运算器存储器控制器输入设备输出设备 指令和地址以同等地位…

基于CUDA的GPU计算PI值

访问【WRITE-BUG数字空间】_[内附完整源码和文档] 基于CUDA的GPU计算PI值。本项目使用CUDA编程模型并行计算PI值,研究GPU与CPU效率的比较,分析不同GPU线程分块对性能的影响。 异构计算试验报告 —实验1:基于CUDA的GPU计算PI值 第一部分&…

原型模式--深拷贝和浅拷贝

定义 Specify the kind of objects to create using a prototypical instance, and create new objects by copying this prototype. (使用原型实例指定将要创建的对象类型,通过复制这个实例创建新的对象。) 从定义中我们我们可以发现&#x…

2023年4月Web3行业月度发展报告区块链篇 | 陀螺科技会员专享

4月,以太坊上海升级与香港Web3动向成最大热点,上海升级的完成是转POS的重要里程碑,从市场而言,由于升级解锁质押ETH是否引发抛压备受关注,仅以交易表现来看,并未出现大范围的抛压与离场。另一方面&#xff…