/// <summary> /// 初始化任务调度对象 /// </summary> public void InitScheduler(string schedulerKey, IList <TaskConfig> taskConfigs, TaskRunnerConfig runnerConfig ) { try { if (_hasinited) { throw new Exception("SchedulerContainer 只能初始化一次"); } var properties = new NameValueCollection { ["quartz.scheduler.instanceName"] = schedulerKey, ["quartz.threadPool.type"] = "Quartz.Simpl.SimpleThreadPool, Quartz", ["quartz.threadPool.threadCount"] = "10", ["quartz.threadPool.threadPriority"] = "Normal", ["quartz.jobStore.misfireThreshold"] = "60000", ["quartz.jobStore.type"] = "Quartz.Simpl.RAMJobStore, Quartz" }; ISchedulerFactory factory = new StdSchedulerFactory(properties); _schedulerKey = schedulerKey; _taskConfigs = taskConfigs; _runnerConfig = runnerConfig; _taskRunLogRespository = new TaskRunLogRespository(_runnerConfig); _scheduler = factory.GetScheduler(); _scheduler.Clear(); _hasinited = true; } catch (Exception ex) { ZilLionLoger.WriteErrLog(ex); } }
/// <summary> /// 初始化 /// </summary> /// <param name="jobConfigDbConString"></param> /// <param name="taskServerId"></param> public static void InitTaskRunner(string jobConfigDbConString, string taskServerId) { if (_hasInited) { throw new Exception("TaskRunner职能初始化一次"); } _instance = new TaskRunner(); _runnerConfig = new TaskRunnerConfig { TaskConfigDbConString = jobConfigDbConString, TaskServerId = taskServerId }; _taskConfigRespository = new TaskConfigRespository(_runnerConfig); _taskRunLogRespository = new TaskRunLogRespository(_runnerConfig); //获得task配置库数据库连接 //设置TaskRunner寄宿的serverid _hasInited = true; //QuartzHelper.InitScheduler(); //任务调度初始化成功 //todo LOG(初始化成功) //todo While 循环监控数据库变化? }
public CustomTriggerListener(TaskRunnerConfig config) { _taskRunLogRespository = new TaskRunLogRespository(config); }
public TaskRunLogRespository(TaskRunnerConfig runnerConfig) { _runnerConfig = runnerConfig; Context = new TaskRunnerContext(_runnerConfig.TaskConfigDbConString); }
public TaskConfigRespository(TaskRunnerConfig runnerConfig) { Context = new TaskRunnerContext(runnerConfig.TaskConfigDbConString); }