返回顶部
首页 > 资讯 > 操作系统 >在Linux下怎么为dotnet创建守护进程
  • 791
分享到

在Linux下怎么为dotnet创建守护进程

2023-06-22 04:06:15 791人浏览 薄情痞子
摘要

本篇内容介绍了“在linux下怎么为dotnet创建守护进程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是守护进程在linux或者un

本篇内容介绍了“在linux下怎么为dotnet创建守护进程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

什么是守护进程

在linux或者unix操作系统中,守护进程(Daemon)是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。由于在linux中,每个系统与用户进行交流的界面称为终端,每一个从此终端开始运行的进程都会依附于这个终端,这个终端被称为这些进程的控制终端,当控制终端被关闭的时候,相应的进程都会自动关闭。但是守护进程却能突破这种限制,它脱离于终端并且在后台运行,并且它脱离终端的目的是为了避免进程在运行的过程中的信息在任何终端中显示并且进程也不会被任何终端所产生的终端信息所打断。它从被执行的时候开始运转,直到整个系统关闭才退出。

此处的创建守护进程,是指发布在Linux上 ASP.net core 程序的dotnet xxx.dll命令的宿主进程创建一个守护进程。

在 Linux 上有很多可以管理进程的工具,我们使用 Supervisor 来做这个事情。

原因有两点:

  • 它是微软官方文档推荐的,降低学习成本。

  • 它并不一定是最好的,但一定是文档最全的。

Supervisor 介绍

Supervisor是采用 python(2.4+) 开发的,它是一个允许用户管理 基于 Unix 系统进程的 Client/Server 系统,提供了大量功能来实现对进程的管理。

官方文档:Http://supervisord.org/

Supervisor 安装

在 masOS 中直接使用brew工具进行安装即可:

brew install supervisor

在 linux 中使用以下命令进行安装:

sudo apt-get install supervisor

yum install supervisor

pip install supervosor

easy_install supervisor

安装完成之后:

在Linux下怎么为dotnet创建守护进程

Mac:~ yangxiaodong$ brew install supervisorWarning: supervisor-3.2.1 already installed

Supervisor 配置,常用命令

安装完成之后,在/ect/supervisor/conf.d/目录下新建一个配置文件(touch HelloWEBApp.conf),取名为HelloWebApp.conf

打开HelloWebApp.conf (vim HelloWebApp.conf),写入如下命令:

[program:HelloWebApp]command=dotnet HelloWebApp.dll  #要执行的命令directory=/home/yxd/Workspace/publish #命令执行的目录environment=ASPnetcore__ENVIRONMENT=Production #环境变量user=www-data  #进程执行的用户身份stopsignal=INTautostart=true #是否自动启动autorestart=true #是否自动重启startsecs=1 #自动重启间隔stderr_logfile=/var/log/HelloWebApp.err.log #标准错误日志stdout_logfile=/var/log/HelloWebApp.out.log #标准输出日志

配置好以后 (:wq保存退出),需要重新加载一下配置

sudo supervisorctl shutdown && sudo supervisord -c /etc/supervisor/supervisord.conf

或者你可以直接重启 Supervisor:

sudo service supervisor stopsudo service supervisor start

如果启动的时候报错,可以打开位于/etc/log/supervisor/supervisord.log文件来查看具体的日志。

其中dotnet 命令输出的日志文件分别为位于

/var/log/HelloWebApp.err.log/var/log/HelloWebApp.out.log

在这些文件里面你可以查看程序中的异常信息或者是运行信息。

打开浏览器,输入http://localhost:5000发现已经可以浏览了。

Supervisor 常用命令

supervisorctl shutdown #关闭所有任务supervisorctl stop|start program_namesupervisorctl status #查看所有任务状态

Supervisor UI 管理台

Supervisor 默认给我们提供了一个图形界面来供我们管理进程和任务,在 macOS 中默认配置的有,但是在 Linux 中我们需要手动开启一下。

打开位于/etc/supervisor/supervisord.conf文件,添加inet_http_server 节点

在Linux下怎么为dotnet创建守护进程

然后就可以通过界面来查看运行的进程了:

在Linux下怎么为dotnet创建守护进程

测试一下

最后,我们测试一下是否会自动重启,开机自动运行?

  • 进程管理中干掉dot net ,发现可以重新启动。以下是日志:

2016-07-09 12:24:18,626 INFO spawned: 'HelloWebApp' with pid 17742016-07-09 12:24:19,766 INFO success: HelloWebApp entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)2016-07-09 12:27:43,208 INFO exited: HelloWebApp (exit status 0; expected)2016-07-09 12:27:44,223 INFO spawned: 'HelloWebApp' with pid 36872016-07-09 12:27:45,243 INFO success: HelloWebApp entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
  • 重启机器,发现可以自动运行。

“在Linux下怎么为dotnet创建守护进程”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 在Linux下怎么为dotnet创建守护进程

本文链接: https://lsjlt.com/news/302609.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 在Linux下怎么为dotnet创建守护进程
    本篇内容介绍了“在Linux下怎么为dotnet创建守护进程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是守护进程在linux或者un...
    99+
    2023-06-22
  • ASP.NET Core在Linux下为dotnet创建守护进程
    什么是守护进程 在linux或者unix操作系统中,守护进程(Daemon)是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。由于在lin...
    99+
    2024-04-02
  • linux守护进程怎么创建
    这篇文章主要讲解了“linux守护进程怎么创建”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux守护进程怎么创建”吧!在linux中,守护进程也称“精灵进程”,是一个在后台运行且不受任...
    99+
    2023-06-29
  • linux中怎么创建守护进程
    这期内容当中小编将会给大家带来有关linux中怎么创建守护进程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。创建子进程,父进程退出   这是编写守护进程的第一步。由于守护进程是脱离控制终端的,因此,完成第...
    99+
    2023-06-09
  • linux 守护进程详解及建立守护进程
    linux 守护进程详解及建立守护进程 守护进程是一种后台运行并且独立于所有终端控制之外的进程。   守护进程的启动   要启动一个守护进程,可以采取一下几种方式: 在系统期间通过系统的初始化脚本启动...
    99+
    2022-06-04
    进程 详解 linux
  • linux 创建守护进程的相关知识
    创建子进程,父进程退出   这是编写守护进程的第一步。由于守护进程是脱离控制终端的,因此,完成第一步后就会在Shell终端里造成一程序已经运行完毕的假象。之后的所有工作都在子进程中完成,而用户在Shell终...
    99+
    2022-06-04
    相关知识 进程 linux
  • Golang怎么创建守护进程和平滑重启
    本篇内容介绍了“Golang怎么创建守护进程和平滑重启”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1)生成守护进程直接上代码:packag...
    99+
    2023-06-20
  • linux守护进程怎么启动
    在Linux中,守护进程的启动通常有以下几种方式: 使用命令行启动:在终端中使用命令行启动守护进程,例如: ./daemon ...
    99+
    2023-10-23
    linux
  • linux中如何建立守护进程
    小编给大家分享一下linux中如何建立守护进程,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!linux 守护进程详解及建立守护进程守护进程是一种后台运行并且独立于...
    99+
    2023-06-09
  • linux下的守护进程实例分析
    本篇内容主要讲解“linux下的守护进程实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux下的守护进程实例分析”吧!shell控制的php常驻进程...
    99+
    2024-04-02
  • 如何在python中创建守护线程
    这期内容当中小编将会给大家带来有关如何在python中创建守护线程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问...
    99+
    2023-06-14
  • Linux系统守护进程怎么理解
    这篇文章主要为大家分析了Linux系统守护进程怎么理解的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“Linux系统守护进程怎么理解”的知识吧。什么是守护进程...
    99+
    2023-06-28
  • Linux下以守护进程方式运行.NET6
    前言 ​ 在《步步入门》 .NET 6 部署到Linux 一文中只是演示了控制终端方式运行ASP.ENT,在实际的应用中,这种方式不能确保服务延续性。如果控制终端关闭,或者服务...
    99+
    2024-04-02
  • 在java中创建守护线程的方法
    本篇文章为大家展示了在java中创建守护线程的方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Java线程分为两类分别为daemon线程(守护线程)和User线程(用户线程),在JVM启动时候会调...
    99+
    2023-05-31
    java 守护线程 ava
  • Linux中怎么显示守护进程和子进程
    在Linux中,可以使用ps命令来显示守护进程和子进程。下面是一些常用的ps命令选项: 显示所有进程(包括守护进程和子进程): ...
    99+
    2024-04-02
  • 怎么在Linux下创建写保护的文件
    这篇文章主要介绍“怎么在Linux下创建写保护的文件”,在日常操作中,相信很多人在怎么在Linux下创建写保护的文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么在Linux下创建写保护的文件”的疑惑有所...
    99+
    2023-06-13
  • Golang如何创建守护进程以及平滑重启
    这篇文章主要介绍了Golang如何创建守护进程以及平滑重启,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方法如下1)生成守护进程直接上代码:package main...
    99+
    2023-06-15
  • PHP怎么实现守护进程
    今天小编给大家分享一下PHP怎么实现守护进程的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。成为守护进程的步骤其实只需要创建子...
    99+
    2023-06-30
  • 用模板的方式创建守护进程代码实例
    #include "wrap.h"#define MYDOMAIN_FLAG "/tmp/.mydomain_log" void domain_end(){ Unlink(MYDOMAIN_FLAG);}...
    99+
    2022-06-04
    实例 进程 模板
  • python守护进程监控子进程怎么实现
    在Python中,可以使用multiprocessing模块来创建子进程并监控它们。具体实现方法如下: 导入multiproces...
    99+
    2023-10-23
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作