运行 Job 与后台任务
本页面向需要处理 BackgroundService、Hangfire Job、异步任务和消息消费的人,重点回答 Scope、WorkContext、鉴权边界和真实项目组织方式。
我现在要解决什么
- 后台任务如何创建自己的 WorkContext。
- Hangfire Job 用框架内置激活器还是项目自定义激活器。
- Dashboard 如何做鉴权。
- 定时任务和消息消费里如何保留上下文边界。
先看哪几页
最短落地路径
- 非 HTTP 线程先建立 WorkContext,再解析 Scoped 服务。
- Hangfire 与 BackgroundService 分别看对应案例,不要混用实现心智。
真实项目怎么做
- niusys-webapi:Hangfire Dashboard 与 Server。
- gmandarin-backend:自定义 Hangfire JobActivator。
- woscm:
BackgroundService+ 嵌套CreateScopeWithWorkContext()。