第九章 Net 5.0 快速开发框架 YC.Boilerplate --定时服务 Quartz.net
在线文档:http://doc.yc-l.com/#/README
在线演示地址:http://yc.yc-l.com/#/login
源码github:https://github.com/linbin524/yc.boilerplate
源码gitee:https://gitee.com/linxuanming/yc.boilerplate
视频教程:
元磁之力框架开源初心和框架设计介绍(上): https://www.bilibili.com/video/BV1VM4y1G7hC/
元磁之力框架开源初心和框架设计介绍(下): https://www.bilibili.com/video/BV15h411s7w6/
元磁之力框架数据库表和代码生成使用教程实战: https://www.bilibili.com/video/BV1oM4y137D5/
定时服务 Quartz.net
基础介绍
Quartz.net 是YC.Boilerplate 集成定时服务模块,采用约定开发模式,统一继承相关接口,实现自己业务开发。
采用IOC 注入模式是使用单例注册。
约定接口
ICronConfig服务时间表达式设置,可以采用配置化拓展IJobLibray服务统一类库集合IJobsConfig服务配置
操作基础流程
- 在
JobService目录下新建xxxJobService文件夹,其中xxx表示自定义服务名。 - 创建一个类 
xxxJob并继承接口IJob,xxxJob的Execute(IJobExecutionContext context)方法去具体编写要进行定时服务的代码. - 分别实现
ICronConfig、IJobLibray、IJobsConfig. - 编写完成后,在
YC.ServiceWebApi的QuartzModule.cs去实现注入配置。 - 在
YC.ServiceWebApi的Startup.cs文件中的执行如下操作_quartzRepository = quartzRepository;
await _scheduler.Start(); List<IJobLibray> jobLibraysList = new List<IJobLibray>();
//jobLibraysList.Add(new CreateDirFolderJobLibray());//指定的服务
//jobLibraysList.Add(new WriteFileJobLibray());
//jobLibraysList.Add(new DeleteLogJobLibray()); var list = await _quartzRepository.DefaultRunningServer(jobLibraysList);//自动开始服务。
 
设计说明
本模块设计本身是一套插件化服务,但为了更好的web的开发模式配合,降低复杂度,所以统一在YC.QuartzService模块中去实现。
如果对插件化模式感兴趣,可参考我另一套插件化模式开源Demo:https://github.com/linbin524/LBPL
拓展改造说明
- 可以根据插件化模式,直接进行安装服务模块不同进行注入;
 - 可以根据提供的仓储方法对服务进行暂停、启用、关闭等控制,进行界面可视化监控运维功能实现。
 - 如果非注入模式,可以参考
QuartzTest采用工厂模式直接调用。 
第九章 Net 5.0 快速开发框架 YC.Boilerplate --定时服务 Quartz.net的更多相关文章
- 第十二章 Net 5.0 快速开发框架 YC.Boilerplate --千万级数据处理解决方案
		
在线文档:http://doc.yc-l.com/#/README 在线演示地址:http://yc.yc-l.com/#/login 源码github:https://github.com/linb ...
 - 第十一章 Net 5.0 快速开发框架 YC.Boilerplate --图数据库模块Neo4j
		
在线文档:http://doc.yc-l.com/#/README 在线演示地址:http://yc.yc-l.com/#/login 源码github:https://github.com/linb ...
 - 第一章 Net 5.0 快速开发框架 YC.Boilerplate--框架介绍
		
YC.Boilerplate 框架介绍 YC.Boilerplate 是一套快速开发框架,采用当下流行的前后端分离开发模式,前端 采用VUE.后端采用Net 5.0:框架实现了 多租户.动态webAp ...
 - 实战SpringCloud响应式微服务系列教程(第九章)使用Spring WebFlux构建响应式RESTful服务
		
本文为实战SpringCloud响应式微服务系列教程第九章,讲解使用Spring WebFlux构建响应式RESTful服务.建议没有之前基础的童鞋,先看之前的章节,章节目录放在文末. 从本节开始我们 ...
 - 精通Web Analytics 2.0 (11) 第九章: 新兴分析—社交,移动和视频
		
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第九章: 新兴分析-社交,移动和视频 网络在过去几年中发生了不可思议的发展变化:从单向对话到双向对话的转变; 由视频,Ajax和 ...
 - Gradle 1.12 翻译——第九章 Groovy快速入门
		
由于时间关系,没办法同时做笔记和翻译,关于Gradle的用户指南,本博客不再做相关笔记,而只对未翻译章节进行翻译并在此发表. 有关其他已翻译的章节请关注Github上的项目:https://githu ...
 - .NET 跨平台RPC框架DotNettyRPC   Web后台快速开发框架(.NET Core)   EasyWcf------无需配置,无需引用,动态绑定,轻松使用  C# .NET 0配置使用Wcf(半成品)   C# .NET Socket 简单实用框架  C# .NET 0命令行安装Windows服务程序
		
.NET 跨平台RPC框架DotNettyRPC DotNettyRPC 1.简介 DotNettyRPC是一个基于DotNetty的跨平台RPC框架,支持.NET45以及.NET Standar ...
 - 《HiWind企业快速开发框架实战》(0)目录及框架简介
		
<HiWind企业快速开发框架实战>(0)目录及框架简介 本系列主要介绍一款企业管理系统快速开发框架,该框架旨在快速完成企业管理系统,并实现易维护可移植的目标. 使用逐个系统模块进行编码的 ...
 - 微信快速开发框架(六)-- 微信快速开发框架(WXPP QuickFramework)V2.0版本上线--源码已更新至github
		
4月28日,已增加多媒体上传及下载API,对应MediaUploadRequest和MediaGetRequest ------------------------------------------ ...
 
随机推荐
- 三层交换机和VLAN
			
目录 一.VLAN的概述及优势 二.VLAN的种类 三.静态VLAN的配置 四.Trunk介绍与配置 五.三层交换机转发原理 一.VLAN的概述及优势 分割广播域 物理分割 逻辑分割 VLAN的优势: ...
 - 洛谷P2210题解
			
题面 模拟退火练手好题. 对于这个题,一般有两种解法: 每次随机两个数交换. 每次直接打乱数组. 两个方法都可以过,我写了第一种,因为不想用stl. 代码
 - K8S系列第九篇(持久化存储,emptyDir、hostPath、PV/PVC)
			
更多k8s内容,请关注威信公众好:新猿技术生态圈 一.数据持久化 Pod是由容器组成的,而容器宕机或停止之后,数据就随之丢了,那么这也就意味着我们在做Kubernetes集群的时候就不得不考虑存储的问 ...
 - Jarvis OJ部分逆向
			
Jarvis OJ部分逆向题解 很久没有写博客了,前天上Jarvis OJ刷了几道逆向,保持了一下感觉.都是简单题目,写个writeup记录一下. easycrackme int __cdecl ma ...
 - 利用支付宝Cookie监听交易订单实现个人支付宝收款实时回调通知
			
在网上.社区里搜了一下好像没找到什么文章详细分享这种方式的,这些天我花了些时间研究整理了一下,发现这种方式能实时获取到支付宝里的二维码收款记录,从而很好地实现个人支付宝免签约收款实时回调,于是在这里分 ...
 - PHP-Audit-Labs-Day2 - filter_var函数缺陷
			
目录 分析 示例 payload 修复建议 Day02-CTF题解 参考链接 分析 先看源码 // composer require "twig/twig" require 've ...
 - const变量通过指针修改问题
			
const的变量在特定情况下可以通过指针修改,但是在另一些情况下是不能通过指针修改. 以下是VC6下才测试. 1. 不能修改的情况 #include int const a = 10; void ma ...
 - 删除EFI系统分区(ESP)后Windows无法启动,重建引导分区并修复启动的过程
			
@ 目录 一.开机故障描述 二.工具: 三.什么是EFI系统分区 四.如何查看EFI系统分区 五.删除后如何重建系统分区 1.建立未分配空间 2.建立ESP分区 3.按下图,ESP分区的大小200M即 ...
 - linux虚拟机环境快速搭建redis5.x版本的主从集群总结
			
文/朱季谦 我在阿里云服务器上曾参与过公司redis集群的搭建,但时间久了,都快忘记当时的搭建过程了,故而决定在虚拟机centOS 7的环境,自行搭建一套redis5.x版本的集群,该版本集群的搭建比 ...
 - MySQL全面瓦解27:主从复制(原理 + 实践)
			
概念 主从复制,是指建立一个和主数据库完全一样的数据库环境(称为从数据库),并将主库的操作行为进行复制的过程:将主数据库的DDL和DML的操作日志同步到从数据库上, 然后在从数据库上对这些日志进行重新 ...