介绍
这篇文章将为大家详细讲解有关。net核心3.0 WebApi如何创建Linux守护进程,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
<强>前言强>
我们一般可以在Linux服务器上执行dotnet & lt; app_assembly.dll>命令来运行我们的。net核心WebApi应用。但是这样运行起来的应用很不稳定,关闭终端窗口之后,应用也会停止运行。为了让其可以稳定运行,我们需要让它变成系统的守护进程,成为一种服务一直在系统中运行,出现异常时也能重新启动。
Linux系统有自己的守护进程管理工具Systemd .systemd是内核启动后的第一个用户进程,PID为1,是所有其它用户进程的父进程。它直接与内核交互,性能出色,可以提供用于启动,停止和管理进程的许多强大的功能。我们完全可以将程序交给Systemd,让系统统一管理,成为真正意义上的系统服务。
systemctl用于管理Systemd的行为,替换之前的sysvinit和暴发户。
<强>创建服务文件强>
创建服务定义文件:
vim /etc/Systemd/系统/qf-intecabinet。服务
以下是应用的一个示例服务文件:
(单位) 描述=运行Qf.InteCabinet服务 (服务) WorkingDirectory=/opt/InteCabinet #,依赖环境,可以指定多个 ExecStart=/usr/bin/dotnet /opt/InteCabinet/Qf.InteCabinet.WebApi.dll 重启=总 #,Restart service  after 10, seconds if 从而dotnet service 崩溃: RestartSec=10 KillSignal=SIGINT SyslogIdentifier=qf-intecabinet 用户=root #,管理服务的用户,用户必须存在并且拥有正确应用文件的所有权 环境=ASPNETCORE_ENVIRONMENT=Production #,环境变量 环境=DOTNET_PRINT_TELEMETRY_MESSAGE=false (安装) WantedBy=multi-user.target #,该服务所在的目标
<>强管理服务强>
保存该文件并启用该服务
systemctl enable qf-intecabinet。服务
启动该服务
systemctl start qf-intecabinet。服务
查看服务状态
systemctl status qf-intecabinet。服务
查看日志
journalctl -fu qf-intecabinet。服务
使用时间选项(如——因为今天,直到1小时前)或这些选项的组合可以减少返回的条目数
journalctl -fu qf-intecabinet.service ——since “2020 - 01 - 01 -“,——until “2020 - 03 - 01, 12:00"
关闭服务
systemctl stop qf-intecabinet。服务
关于“。net核心3.0 WebApi如何创建Linux守护进程”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。