首页 > 代码库 > Net作业调度(二) -CrystalQuartz远程管理
Net作业调度(二) -CrystalQuartz远程管理
Source Code-1.6M
介绍
接着上一篇。 我们已经初步会使用Quartz.NET了。但如果想方便的知道某个作业执行情况,并暂停,启动等等,这时候就需要个管理界面了。
本文介绍Quartz.NET 远程管理。如图:
实战
一:作业服务端
static void Main(string[] args) { var properties = new NameValueCollection(); properties["quartz.scheduler.instanceName"] = "RemoteServerSchedulerClient"; // 设置线程池 properties["quartz.threadPool.type"] = "Quartz.Simpl.SimpleThreadPool, Quartz"; properties["quartz.threadPool.threadCount"] = "5"; properties["quartz.threadPool.threadPriority"] = "Normal"; // 远程输出配置 properties["quartz.scheduler.exporter.type"] = "Quartz.Simpl.RemotingSchedulerExporter, Quartz"; properties["quartz.scheduler.exporter.port"] = "556"; properties["quartz.scheduler.exporter.bindName"] = "QuartzScheduler"; properties["quartz.scheduler.exporter.channelType"] = "tcp"; var schedulerFactory = new StdSchedulerFactory(properties); var scheduler = schedulerFactory.GetScheduler(); var job = JobBuilder.Create<PrintMessageJob>() .WithIdentity("myJob", "group1") .Build(); var trigger = TriggerBuilder.Create() .WithIdentity("myJobTrigger", "group1") .StartNow() .WithCronSchedule("/10 * * ? * *") .Build(); scheduler.ScheduleJob(job, trigger); scheduler.Start(); }
public class PrintMessageJob : IJob { public void Execute(IJobExecutionContext context) { Console.WriteLine("Hello!"); } }
启动如下
二:作业远程管理端,无需写任何代码。引用官方程序集,嵌入已有网站。
PM> Install-Package CrystalQuartz.Remote
Webconfig 需要配置的地方
<configuration> <crystalQuartz> <provider> <add property="Type" value="http://www.mamicode.com/CrystalQuartz.Core.SchedulerProviders.RemoteSchedulerProvider, CrystalQuartz.Core" /> <add property="SchedulerHost" value="tcp://127.0.0.1:556/QuartzScheduler" /> <!--TCP监听的地址--> </provider> </crystalQuartz><system.webServer> <!-- Handler拦截处理了,输出作业监控页面--> <handlers> <add name="CrystalQuartzPanel" verb="*" path="CrystalQuartzPanel.axd" type="CrystalQuartz.Web.PagesHandler, CrystalQuartz.Web" /> </handlers> </system.webServer></configuration>
Web管理界面
其他
1:为了方便,我直接拿官方项目用了。
2:CrystalQuartz 提供基础功能,你可以继续扩展开发。
3:推荐用 Window服务寄宿。
主要参考资源
李善友 http://www.cnblogs.com/shanyou/archive/2012/01/15/2323011.html
CrystalQuartz开源地址 https://github.com/guryanovev/CrystalQuartz
Net作业调度(二) -CrystalQuartz远程管理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。