Quartz.NET提供了集群的配置,这个集群并不能达到负载均衡的效果,而仅仅提供了故障转移的功能,主要场景是:两个节点的Quartz.NET任务服务器同时连接到另一个节点的数据库服务器,当一个任务服务器宕机时,另一个任务服务器会启动。
集群的主要配置如下:
properties["quartz.jobStore.clustered"] = "true";
总的代码如下:
[PersistJobDataAfterExecution]
[DisallowConcurrentExecution]
public class SimpleRecoveryJob : IJob
{
private static readonly ILog log = LogManager.GetLogger(typeof (SimpleRecoveryJob));
public const string Count = "count";
public virtual void Execute(IJobExecutionContext context)
{
JobKey jobKey = context.JobDetail.Key;
if (context.Recovering)
{
log.InfoFormat("SimpleRecoveryJob: {0} 恢复时间 at {1}", jobKey, DateTime.Now.ToString());
}
else