add scheduler based on Algorithm::Cron
This commit is contained in:
		| @@ -46,6 +46,8 @@ sub build_tasks_list { | ||||
|     user_begin => worker_factory('Manager'), | ||||
|   }]; | ||||
|  | ||||
|   set(daemon_schedulers => 1) | ||||
|     if !defined setting('daemon_schedulers'); | ||||
|   set(daemon_pollers => 2) | ||||
|     if !defined setting('daemon_pollers'); | ||||
|   set(daemon_interactives => 2) | ||||
| @@ -53,6 +55,11 @@ sub build_tasks_list { | ||||
|  | ||||
|   # XXX MCE does not like max_workers => 0 | ||||
|  | ||||
|   push @$tasks, { | ||||
|     max_workers => setting('daemon_schedulers'), | ||||
|     user_begin => worker_factory('Scheduler'), | ||||
|   } if setting('daemon_schedulers'); | ||||
|  | ||||
|   push @$tasks, { | ||||
|     max_workers => setting('daemon_pollers'), | ||||
|     user_begin => worker_factory('Poller'), | ||||
| @@ -63,8 +70,11 @@ sub build_tasks_list { | ||||
|     user_begin => worker_factory('Interactive'), | ||||
|   } if setting('daemon_interactives'); | ||||
|  | ||||
|   info sprintf "MCE will load %s tasks: 1 Manager, %s Poller, %s Interactive", | ||||
|     (1+ scalar @$tasks), (setting('daemon_pollers') || 0), (setting('daemon_interactives') || 0); | ||||
|   info sprintf "MCE will load %s tasks: 1 Manager, %s Scheduler, %s Poller, %s Interactive", | ||||
|     (1+ scalar @$tasks), | ||||
|     (setting('daemon_schedulers') || 0), | ||||
|     (setting('daemon_pollers') || 0), | ||||
|     (setting('daemon_interactives') || 0); | ||||
|   return $tasks; | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user