Topshelf+Quartz实现windows任务】的更多相关文章

.net core+topshelf+quartz创建windows定时任务服务 准备工作 创建.net core 控制台应用程序,这里不做过多介绍 添加TopShelf包:TopShelf: 添加Quartz包:Quartz.Quartz.Plugins: 添加依赖注入包:Microsoft.Extensions.DependencyInjection: 添加读取配置文件包:Microsoft.Extensions.Configuration.Json: 添加访问数据库包:Microsoft.…
Topshelf使用示例, HostFactory.Run(x => { x.Service<QuartzStartup>(s => { s.ConstructUsing(name => new QuartzStartup()); s.WhenStarted(tc => tc.Start()); s.WhenStopped(tc => tc.Stop()); }); x.RunAsLocalSystem(); x.StartAutomatically(); x.S…
背景 前段时间公司有个需求(每天给业务导出一批数据,以excel的形式通过邮件发送给他).A说:直接写个服务,判断等于某个时间点,执行一下sql语句,生成excel,写个EmaiHelper发送给他不就得了,这有什么麻烦的?B说:我了个亲娘来,还写服务呢?你还需要搞个timer去判断时间点?多费劲啊,直接写个控制台程序,添加个任务计划,不就搞定了吗?我只想说:你们都是大神,每次都不加点新的东西,还写什么代码,多么没劲啊,前两天看到了topshelf+quartz.net这个东东,可以做个练习了.…
Quartz.NET Windows 服务示例 想必大家在项目中处理简单的后台持续任务或者定时触发任务的时候均使用 Thread 或者 Task 来完成,但是项目中的这种需求一旦多了的话就得将任务调度引入进来了,那今天就简单的介绍一下 Quartz.NET 基于 Windows 服务宿主是怎样配置使用的. Quartz.NET 是一个优秀的任务调度框架,移植于 Java 版的 Quartz . 官网:http://www.quartz-scheduler.net Github:https://g…
目前很多项目都是B/S架构的,我们经常会用到webapi.MVC等框架,实际项目中可能不仅仅是一些数据的增删改查,需要对数据进行计算,但是将计算逻辑放到api层又会拖累整个项目的运行速度,从而会写一些计划任务(使用quartz.net,在上一篇中已经提到)将需要计算的数据提前计算并入库,理论上api层需要做的只是增删改查,从而加快程序运行速度. 传统windows 服务需要创建一个windows service 项目,我自己没有用过,但是看过别人的整个开发流程,感觉及其繁杂并且不容易调试. 使用…
想必大家在项目中处理简单的后台持续任务或者定时触发任务的时候均使用 Thread 或者 Task 来完成,但是项目中的这种需求一旦多了的话就得将任务调度引入进来了,那今天就简单的介绍一下 Quartz.NET 基于 Windows 服务宿主是怎样配置使用的. Quartz.NET 是一个优秀的任务调度框架,移植于 Java 版的 Quartz . 官网:http://www.quartz-scheduler.net Github:https://github.com/quartznet/quar…
很多时候,我们需要为一个服务器安装一堆的服务,来监控各种数据. 在windows服务器里,我们会部署专门的Quartz.Net多任务轮询服务. 同时,我们针对不同的任务制作专门的***Job.dll, 针对任务的Dll,考虑到升级问题,我们需要专门制作UpdateJob.dll来实现任务的业务逻辑的更新(.Net涉及到Appdomain的映射.复制和卸载):MarshalByRefObject 注:每次访问,都会有相应的Version信息带回,UPdateJob.dll只需要监视Version的…
结合Quartz.net学习,前提已经创建了一个定时任务,可见 <定时调度框架:Quartz.net> (基于配置文件形式) 首先引用Topshelf.dll 自定义服务TestService,继承ServiceControl,实现方法. public class TestService : ServiceControl { private readonly IScheduler scheduler; public TestService() { scheduler = StdSchedule…
Topshelf是 基于.net框架开发的宿主服务框架.该框架简化了服务的创建,开发人员只需要使用 Topshelf编写一个控制台程序,就能安装为Windows服务.之所以这样原因非常简单:调试一个控制台程序比调试Windows服务应用更加简单.一般应用测试后发布到生产环境,由于采用了Topshelf,很简单就能把一个应用安装为Windows服务. 官网:http://topshelf-project.com/  这里面有详细的文档及下载 Topshelf的代码托管在 http://github…
quartznet 上篇说到quartznet这个东东,topshelf+quartznet有很多不错的文章,可以查看七七同学的文章(http://www.cnblogs.com/jys509/p/4628926.html).这里我主要说说cron表达式,如果玩过linux下定时任务的肯定不陌生. 官方英文介绍地址:http://www.quartz-scheduler.net/documentation/quartz-2.x/tutorial/crontrigger.html cron exp…