Finish porting the workers over to apscheduler 3.0
This commit is contained in:
parent
09917ff062
commit
0aa6e92b02
3 changed files with 16 additions and 36 deletions
|
@ -4,7 +4,7 @@ import signal
|
|||
import sys
|
||||
|
||||
from threading import Event, Lock
|
||||
from apscheduler.schedulers.blocking import BlockingScheduler
|
||||
from apscheduler.schedulers.background import BackgroundScheduler
|
||||
from datetime import datetime, timedelta
|
||||
from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
|
||||
from threading import Thread
|
||||
|
@ -64,7 +64,7 @@ class WorkerStatusHandler(BaseHTTPRequestHandler):
|
|||
class Worker(object):
|
||||
def __init__(self, queue, poll_period_seconds=30, reservation_seconds=300,
|
||||
watchdog_period_seconds=60):
|
||||
self._sched = BlockingScheduler()
|
||||
self._sched = BackgroundScheduler()
|
||||
self._poll_period_seconds = poll_period_seconds
|
||||
self._reservation_seconds = reservation_seconds
|
||||
self._watchdog_period_seconds = watchdog_period_seconds
|
||||
|
@ -166,10 +166,10 @@ class Worker(object):
|
|||
soon = datetime.now() + timedelta(seconds=.001)
|
||||
|
||||
self._sched.start()
|
||||
self._sched.add_interval_job(self.poll_queue, seconds=self._poll_period_seconds,
|
||||
start_date=soon)
|
||||
self._sched.add_interval_job(self.update_queue_metrics, seconds=60, start_date=soon)
|
||||
self._sched.add_interval_job(self.run_watchdog, seconds=self._watchdog_period_seconds)
|
||||
self._sched.add_job(self.poll_queue, 'interval', seconds=self._poll_period_seconds,
|
||||
start_date=soon)
|
||||
self._sched.add_job(self.update_queue_metrics, 'interval', seconds=60, start_date=soon)
|
||||
self._sched.add_job(self.run_watchdog, 'interval', seconds=self._watchdog_period_seconds)
|
||||
|
||||
signal.signal(signal.SIGTERM, self.terminate)
|
||||
signal.signal(signal.SIGINT, self.terminate)
|
||||
|
|
Reference in a new issue