mirror of
https://github.com/meeb/tubesync.git
synced 2025-06-25 06:26:37 +00:00
Merge 40489a2bf2
into f5a71592fc
This commit is contained in:
commit
d9b5529801
@ -1,3 +1,4 @@
|
||||
import os
|
||||
from functools import wraps
|
||||
|
||||
|
||||
@ -25,13 +26,21 @@ def h_q_tuple(q, /):
|
||||
)
|
||||
|
||||
|
||||
def sqlite_tasks(key, /, prefix=None):
|
||||
def sqlite_tasks(key, /, prefix=None, thread=None, workers=None):
|
||||
name_fmt = 'huey_{}'
|
||||
if prefix is None:
|
||||
prefix = ''
|
||||
if prefix:
|
||||
name_fmt = f'huey_{prefix}_' + '{}'
|
||||
name = name_fmt.format(key)
|
||||
thread = thread is True
|
||||
try:
|
||||
workers = int(workers)
|
||||
except TypeError:
|
||||
workers = 2
|
||||
finally:
|
||||
if 0 >= workers:
|
||||
workers = os.cpu_count()
|
||||
elif 1 == workers:
|
||||
thread = False
|
||||
return dict(
|
||||
huey_class='huey.SqliteHuey',
|
||||
name=name,
|
||||
@ -46,8 +55,8 @@ def sqlite_tasks(key, /, prefix=None):
|
||||
strict_fifo=True,
|
||||
),
|
||||
consumer=dict(
|
||||
workers=1,
|
||||
worker_type='process',
|
||||
workers=workers if thread else 1,
|
||||
worker_type='thread' if thread else 'process',
|
||||
max_delay=20.0,
|
||||
flush_locks=True,
|
||||
scheduler_interval=10,
|
||||
|
@ -52,10 +52,10 @@ FORCE_SCRIPT_NAME = None
|
||||
DJANGO_HUEY = {
|
||||
'default': 'network',
|
||||
'queues': {
|
||||
'database': sqlite_tasks('database'),
|
||||
'filesystem': sqlite_tasks('filesystem'),
|
||||
'limited': sqlite_tasks('limited', prefix='net'),
|
||||
'network': sqlite_tasks('network'),
|
||||
'database': sqlite_tasks('database', thread=True),
|
||||
'filesystem': sqlite_tasks('filesystem', thread=True),
|
||||
'limited': sqlite_tasks('limited', prefix='net', workers=1),
|
||||
'network': sqlite_tasks('network', thread=True, workers=0),
|
||||
},
|
||||
}
|
||||
for django_huey_queue in DJANGO_HUEY['queues'].values():
|
||||
|
Loading…
Reference in New Issue
Block a user