zoukankan      html  css  js  c++  java
  • .NET Core3.0-Worker Services

     .NET CORE 3.0新增了Worker Services的新项目模板,可以编写长时间运行的后台服务,并且能轻松的部署成windows服务或linux守护程序。

    步骤:

    1.创建项目:

    创建成功后:

    就只有2个类,与ASP.NET Core Web应用程序相比,Program类没什么改变 ,startup类消失了,并且把worker服务添加到DI container中。

    worker类继承了BackgroundService

    运行就可知道,每隔1秒打印一次

    Windows服务部署

    引用包  :Microsoft.Extensions.Hosting.WindowsServices -v3.0.0
    然后在 program.cs加.UseWindowsService()

     然后我们再来发布项目:

    第一步:

    方法一:

     发布在自己想要的位置

    方法二:

    打开命令,先找到项目:cd  +项目路径

     然后: dotnet publish -c Release -o 加发布的地址--》

    dotnet publish -c Release -o C:WorkerPubRelease
    

      

     (主要,如果说找不到文件或者什么的,就是因为你没有先找到项目路径)

    第二步:创建windows服务(使用sc.exe 工具)

    sc create 名称 binPath=可执行程序的路径    --》
    sc create TimingWorkService binPath=C:WorkerPubWorkerService1.exe
    

     成功之后,我们打开服务去查看:

    打开命令:输入services.msc,可看真的成功了

    查看服务状态

    sc query TimingWorkService

     STATE状态是STOPPED说明停止状态

    然后我们开启服务

    sc start TimingWorkService
    

      

     STATE状态是START说明启动了,也可以查看一下

     测试后,执行停止,删除

    sc stop TimingWorkService
    sc delete TimingWorkService 

     执行成功后,服务里面也找不到了。找得到就说明没有成功

    Linux守护程序运行 :

    1.添加包:

    Microsoft.Extensions.Hosting.Systemd NuGet软件包
    

    2. UseSystemd()加入到Program.cs

     

  • 相关阅读:
    class线程信息
    Class 文件简介
    JVM对象及垃圾回收处理
    jvm体系结构
    查找

    二叉树
    队列


  • 原文地址:https://www.cnblogs.com/yueyongsheng/p/11991882.html
Copyright © 2011-2022 走看看