/// <summary> /// 配置任务调度 /// </summary> /// <param name="quartzConfig"></param> private static void InitScheduler(QuartzConfig quartzConfig) { var properties = new NameValueCollection(); properties["quartz.scheduler.instanceName"] = "TTYScheduler"; properties["quartz.scheduler.instanceId"] = "instance_tty"; properties["quartz.threadPool.type"] = "Quartz.Simpl.SimpleThreadPool, Quartz"; properties["quartz.threadPool.threadCount"] = quartzConfig.QuartzThreadCount.ToString(); properties["quartz.threadPool.threadPriority"] = "Normal"; properties["quartz.jobStore.misfireThreshold"] = "60000"; //properties["quartz.scheduler.exporter.type"] = "Quartz.Simpl.RemotingSchedulerExporter, Quartz"; properties["quartz.scheduler.exporter.channelType"] = "tcp"; properties["quartz.jobStore.type"] = "Quartz.Impl.AdoJobStore.JobStoreTX, Quartz"; properties["quartz.jobStore.lockHandler.type"] = "Quartz.Impl.AdoJobStore.UpdateLockRowSemaphore, Quartz"; properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.MySQLDelegate, Quartz"; properties["quartz.jobStore.useProperties"] = "false"; properties["quartz.jobStore.dataSource"] = "ttyscheduler"; properties["quartz.jobStore.tablePrefix"] = "qrtz_"; properties["quartz.jobStore.clustered"] = "true"; properties["quartz.dataSource.ttyscheduler.provider"] = "MySql"; properties["quartz.scheduler.exporter.port"] = quartzConfig.QuartzExporterPort; properties["quartz.scheduler.exporter.bindName"] = quartzConfig.QuartzExporterBindName; properties["quartz.dataSource.ttyscheduler.connectionString"] = quartzConfig.QuartzConnectionString; properties["quartz.serializer.type"] = "binary"; var schedulerFactory = new StdSchedulerFactory(properties); var scheduler = schedulerFactory.GetScheduler().Result; scheduler.Start(); Console.WriteLine("Quartz启动成功"); }
protected void Application_Start() { //autofac配置 AutofacConfig.Init(); AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); AutoMapperConfig.InitMapping(); //扫描异常信息 改用Quartz定时扫描 // MyException.ProcessException(); //执行计划任务 QuartzConfig.InitJob(); QuartzConfig.StartJob(); //EF Pre-Generated Mapping Views(预生成映射视图) using (var dbcontext = new NFineBaseEntities()) { var objectContext = ((IObjectContextAdapter)dbcontext).ObjectContext; var mappingCollection = (StorageMappingItemCollection)objectContext.MetadataWorkspace.GetItemCollection(DataSpace.CSSpace); mappingCollection.GenerateViews(new List <EdmSchemaError>()); } }
public static void RegisterComponents() { lock (Lock) { // Only initialize once if (GlobalConfiguration.Configuration.DependencyResolver != null && GlobalConfiguration.Configuration.DependencyResolver.GetType() == typeof(UnityDependencyResolver)) { return; } var section = (UnityConfigurationSection)ConfigurationManager.GetSection("unity"); var container = new UnityContainer(); section.Configure(container); QuartzConfig.Register(container); GlobalConfiguration.Configuration.DependencyResolver = new UnityDependencyResolver(container); } }
public static void RegisterComponents() { lock (Lock) { // Only initialize once if (GlobalConfiguration.Configuration.DependencyResolver != null && GlobalConfiguration.Configuration.DependencyResolver.GetType() == typeof(UnityDependencyResolver)) { return; } var container = new UnityContainer(); var unitySections = new[] { "crossroadsCommonUnity", "unity", "asyncJobsUnity" }; foreach (var section in unitySections.Select(sectionName => (UnityConfigurationSection)ConfigurationManager.GetSection(sectionName))) { container.LoadConfiguration(section); } QuartzConfig.Register(container); GlobalConfiguration.Configuration.DependencyResolver = new UnityDependencyResolver(container); } }