基于 .NET 开源、功能齐全的分布式作业调度系统
发布时间:2025-08-10 09:40 浏览量:2
在当今企业级应用开发中,可靠的任务调度系统已成为支撑业务连续性的关键基础设施。今天大姚给大家分享一个基于 .NET 开源、功能齐全的分布式作业调度系统:Sundial。
Sundial 是一个基于 .NET 开源(MIT License)、功能齐全的分布式作业调度系统,它可从最小的应用程序到大型企业系统使用。
创建自定义任务 CustomJob 并实现 IJob 接口:
public class CustomJob : IJob{
private readonly ILogger
public CustomJob(ILogger
{
_logger = logger;
}
public Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
{
_logger.LogInformation(context.ToString);
Console.WriteLine($"[{DateTime.Now:HH:mm:ss}] 任务执行中...");
return Task.CompletedTask;
}
}
在 Program.cs 中注册 Sundial 作业并配置触发器:
// 注册 Sundial 作业builder.Services.AddSchedule(options =>
{
options.AddJob
// 使用Cron表达式(每天12点执行)
// options.AddJob
});
更多项目实用功能和特性欢迎前往项目开源地址查看,别忘了给项目一个Star支持。
Gitee开源地址:https://gitee.com/dotnetchina/Sundial本文示例源码地址:https://GitHub.com/YSGStudyHards/DotNetExercises/tree/master/SundialExercises该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没)。
GitHub开源地址:https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.mdGitee开源地址:https://gitee.com/ysgdaydayup/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md学习是一个永无止境的过程,你知道的越多,你不知道的也会越多,在有限的时间内坚持每天多学一点,你一定能成为你想要成为的那个人。不积跬步无以至千里,不积小流无以成江海!