tempora/initiator.py
2025-05-03 08:25:15 +03:00

28 lines
885 B
Python

from celery_app import app
from utils.logg import LoggerSingleton
logger = LoggerSingleton.get_logger()
# Брокер центральный узел, который:
# Принимает задачи от beat (планировщика)
# Распределяет их по очередям (telegram, forum).
# Передаёт задачи воркерам, которые подписаны на эти очереди.
def main():
try:
logger.info("Starting Celery worker...")
app.worker_main(
argv=[
'worker',
'--loglevel=debug',
'--pool=solo',
'-Q', 'telegram',
'--without-heartbeat',
'--without-gossip'
]
)
except Exception as e:
logger.error(f"Failed to start worker: {e}")
if __name__ == '__main__':
main()