.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内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!