继在统信UOS上运行.Net Core之后,保持其在后台运行,并出错自重启

news/2024/5/19 22:08:44 标签: .netcore, 统信UOS, .netcore守护进程, 信创

继上一篇介绍了如何在统信uos上运行.Net Core项目后,面对实际的开发需要,肯定不能将项目运行在命令窗口中,在窗口中,项目一旦异常,会直接结束,所以我们需要将其运行到后台,并能在出现异常停止时,重启它。这里我们采用创建服务文件的方式实现守护进程。
服务文件 demo.service内容

[Unit]
# 描述内容,可以随便写
Description= .net core run demo
[Service]
#项目地址
WorkingDirectory=/data/demoApi/
# 主进程模式,默认的服务类型,如果项目运行需要加载一些配置文件,可以采用oneshot 或 notify模式
Type=simple
# 用户
User=root
# 用户组-非必须
Group=root
# 启动应用程序的实际命令,前端部分是dotnet的地址,后面是项目实际运行文件的地址
# 这里使用的使用统信UOS系统,所以dotnet的地址如下,其他发行版的linux可以自行查找资料
ExecStart=/usr/share/dotnet/dotnet /data/demoApi/demoApi.dll
# 无论因为什么原因停止,都会启动该过程
Restart=always
# 重启延迟时间
RestartSec=3
# 它表示“系统日志标识符”。 有关守护程序的信息记录在此名称下的系统日志中。 
# 还可以使用此标识符查找进程的 PID。
SyslogIdentifier=myapi-example
# 标识为生产环境
Environment=ASPNETCORE_ENVIRONMENT=Production
# 关闭.NET Core遥测
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
# 多用户模式下,该服务自启
WantedBy=multi-user.target

将上面的内容保存为demoApi.service,并放置到某个目录下,通过下列指令可以控制服务的启动停止,并查看服务状态

# 停止api服务
systemctl stop demoApi.service
# 通过enable子命令,在系统启动并达到该服务配置文件中
# 指定的运行级别(例如,可能是multi-user.target或其他),该服务就会自动启动
# --now 立即启动
systemctl enable --now /data/demoApi/demoApi.service
# 查看api服务的运行状态
systemctl status demoApi.service

http://www.niftyadmin.cn/n/5232030.html

相关文章

C#获取字符串变量内存地址

在C#中,由于其设计原则,你不能直接获取字符串变量的内存地址。这是因为C#是一种安全的语言,不允许直接访问内存。这是为了预防程序员在处理内存时可能出现的错误,如越界访问,悬挂指针等。 但是,使用System.…

jdk8、jdk9中,接口的新特性

接口的老特性: 没有构造方法成员变量只能定义常量,默认三个关键字public static final只能是抽象方法,默认两个关键字public abstract 接口的新特性: jdk8 1.接口允许定义非抽象方法,需加入default关键字。为了解决…

.net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法

文章目录 .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法详细报错内容解决方案修改数据修改表修改字段 .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法 详细报错内容 System.NotSupportedException…

【laBVIEW学习】4.声音播放,自定义图标,滚动条设置

一。声音播放(报错,未实现) 1.报错4810 2.解决方法: 暂时未解决。 二。图片修改 1.目标:灯泡---》自定义灯泡 2.步骤: 1.右键点击--》自定义运行 表示可以制作自定义类型 2.右键--》打开自定义类型 这样就…

PostgreSQL PG_DUMP 工作失败了怎么回事及如何处理

开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, Oceanbase, Sql Server等有问题,有需求都可以加群。加群请联系 liuaustin3 ,(共1730人左右 1 2 3 4 5) 4群(260&#xff09…

【C++】string类模拟实现过程中值得注意的点

👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》 🌝每一个不曾起舞的日子,都是对生命的辜负 目录 前言 1.有关const的使用 &#x…

OSI七层模型的前三层

开发中我们常见的网络设计和网络排查等,用到的网络层一般是tcp/ip第四层,也称OSI 网络层,很少去关心前三层的网络层、数据链路层、物理层,脑海里想到这三层的数据流转,脑海里都是抽象的画面。 本篇浅显的梳理前三层中各…

Drools setFocus 测试

Drools setFocus 可以使用 auto focus使用java 代码设置在drl设置java 设置最优先最后设置的agenda 回pop到最上层优先触发 注意只有满足条件 setFocus的agenda /rule 才会被触发。 测试用DRL文件。 package org.drools.examples.state.agendagroupimport org.drools.examp…