.net core 3.0新增了worker services的新项目模板,可以编写长时间运行的后台服务,并且能轻松的部署成windows服务或linux守护程序。如果安装的vs2019是中文版本,worker services变成了辅助角色服务。worker services 咱也不知道怎么翻译成了这个名称,咱也不敢乱翻译,下文就保持原名称。。。,本文将会演示如何创建一个worker services项目,并且部署为windows服务或linux守护程序运行;

开始创建worker service 项目

创建新项目——》选择辅助角色服务

项目创建成功之后,您会看到创建了两个类:program和worker。

program.cs

program类跟asp.net core web应用程序非常类似,不同之处没有了startup类,并且把worker服务添加到di container中。

worker.cs

worker只是一个简单的类,它继承自backgroundservice,而后者又实现ihostedservice接口。

默认的worker演示,没隔1秒,循环打印运行的时间。

部署为windows服务运行1.在项目中添加nuget包:microsoft.extensions.hosting.windowsservices

2.然后在program.cs内部,将usewindowsservice()添加到createhostbuilder

3.执行一下命令发布项目

4.然后使用来管理服务,输入一下命令创建为windows服务

查看服务状态使用一下命令

启动命令

在服务列表查看,demoworkservice已安装成功

停用 、删除命令

部署作为linux守护程序运行

部署linux守护程序也是很方便的执行一下两个步骤即可:

添加microsoft.extensions.hosting.systemd nuget包到项目中,并告诉你的新worker,其生命周期由systemd管理!

将usesystemd()添加到主机构建器中。

到此这篇关于.net core3.0创建worker services的实现的文章就介绍到这了,更多相关.net core3.0创建worker services内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!