news.persister — Schedule persistence¶
Provides a persister class that will persist schedules along multiple processes or threads.
-
class
news.persister.Persister(redis, context=None)¶ Persists schedule states along multiple processes or threads via redis channels.
Parameters: redis ( Redis) – A redis instance to use for persistence.Example:
from redis import Redis from django.contrib.auth.models import User from news.models.django import create_abc_schedule, create_schedule from news.scheduler import Scheduler from news.persister import Persister redis = Redis() persister = Persister(redis=redis) # define persisted schedule model ScheduleABC = create_abc_schedule(user_model=User) Schedule = create_schedule(ScheduleABC, persister=persister) ... # scheduler's schedule states will be persisted over change events from # other processes or threads. this allows you to run a news scheduler # on it's own process or threads. scheduler.configure(persister=persister)