zoukankan      html  css  js  c++  java
  • LBPL--基于Asp.net、 quartz.net 快速开发定时服务的插件化项目

    LBPL

    这一个基于Asp.net、 quartz.net 快速开发定时服务的插件化项目

    由于在实际项目开发中需要做定时服务的操作,大体上可以理解为:需要动态化监控定时任务的调度系统。

    为了实现快速开发、简单明了完成一个服务,不再繁琐的进行各种代码耦合度强的操作,设计了一个以暂时以quartz.net 为服务载体,插件化开发的模式。

    github地址:https://github.com/linbin524/LBPL

    由于工作比较忙,暂时更新部分,后续会将相关的开发文档更新。

    主要开发流程

    1、 开发人员 新建类库 类库名称格式 LBPL.PlugIn.{xxxxx}ServicePlugin

    2、引用LBPL.PlugIn.Integration、LBPL.PlugIn.Model 两个类库

    3、实例化三个类分别继承:ICronConfig、IJobLibray、IJobsConfig 三个接口

    3.1 CronConfig 这个类用于配置时间表达式 (目前配置在主项目的AppSetting中,后期会单独抽离)

    3.2 JobLibray 服务资源池 用于动态加载 本服务插件类库中 定时任务

    3.3 JobsConfig 具体Quartz.net 定时服务调度

    4、完成以上操作,自动编译生dll,通过自定义操作(简单的选择dll) 调用 仓储方法

    AddQuartzServer(IJobDetail jobDetail, Quartz.Collection.HashSet triggerList, out string error, bool IsRun = true)

    就可以实现一个简单服务的自动调用了

    5、监控各种服务状态

    调用该方法,可以获取所有服务状态

    List GetALLQuartzServer();

  • 相关阅读:
    Sql inner join
    转:MySQL 的show processlist
    session cookie
    集群和分布式
    设计模式
    Web性能优化——缓存
    关于 java 里面的路径
    1分钟看懂log4j 配置自己想要的日志信息
    spring @bean 的理解
    如何用iptables实现NAT(转)
  • 原文地址:https://www.cnblogs.com/linbin524/p/6590827.html
Copyright © 2011-2022 走看看