SyncRedisStorage
Sync Redis storage.
SyncRedisStorage
¶
Bases: BaseStorage
, SyncPluginMixin
Хранилище, работающий с Redis, сохраняя информацию о задачах.
Example¶
from qtasks import QueueTasks
from qtasks.brokers import SyncRedisBroker
from qtasks.storages import SyncRedisStorage
storage = SyncRedisBroker(name="QueueTasks")
broker = SyncRedisBroker(name="QueueTasks", storage=storage)
app = QueueTasks(broker=broker)
__init__(name='QueueTasks', url='redis://localhost:6379/0', queue_process='task_process', redis_connect=None, global_config=None, log=None, config=None)
¶
Инициализация хранилища.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name
|
str
|
Имя проекта. По умолчанию: "QueueTasks". |
'QueueTasks'
|
url
|
str
|
URL для подключения к Redis. По умолчанию: "redis://localhost:6379/0". |
'redis://localhost:6379/0'
|
queue_process
|
str
|
Имя канала для задач в процессе. По умолчанию: "task_process". |
'task_process'
|
redis_connect
|
Redis
|
Внешний класс подключения к Redis. По умолчанию: None. |
None
|
global_config
|
BaseGlobalConfig
|
Глобальный конфиг. По умолчанию: None. |
None
|
log
|
Logger
|
Логгер. По умолчанию: |
None
|
config
|
QueueConfig
|
Конфиг. По умолчанию: |
None
|
add(uuid, task_status)
¶
Добавление задачи в хранилище.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
uuid
|
UUID | str
|
UUID задачи. |
required |
task_status
|
TaskStatusNewSchema
|
Схема статуса новой задачи. |
required |
add_process(task_data, priority)
¶
Добавляет задачу в список задач в процессе.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
task_data
|
str
|
Данные задачи из брокера. |
required |
priority
|
int
|
Приоритет задачи. |
required |
flush_all()
¶
Удалить все данные.
get(uuid)
¶
Получение информации о задаче.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
uuid
|
UUID | str
|
UUID задачи. |
required |
Returns:
Type | Description |
---|---|
Task | None
|
Task|None: Если есть информация о задаче, возвращает |
remove_finished_task(task_broker, model)
¶
Обновляет данные завершенной задачи.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
task_broker
|
TaskPrioritySchema
|
Схема приоритетной задачи. |
required |
model
|
TaskStatusSuccessSchema | TaskStatusErrorSchema
|
Модель результата задачи. |
required |
start()
¶
Запускает хранилище.
stop()
¶
Останавливает хранилище.
update(**kwargs)
¶
Обновляет информацию о задаче.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
kwargs
|
dict
|
данные задачи типа kwargs. |
{}
|