1
셀러리의 문서에서 알 수 있듯이 게시 작업을 수행 할 때 우선 교환을 보내고 대리인을 대기열로 교환합니다. 이제 나는받은 모든 작업을 3 개의 다른 대기열에 위임 할 특정 맞춤형 교환기로 작업을 보내려고합니다. 다른 대기열은 백그라운드에서 다른 소비자를 가지며 다른 작업을 수행합니다.셀러리 파이썬 대신 큐에 넣기 작업을 보내는 방법
class Tasks(object):
def __init__(self, config_object={}):
self.celery = Celery()
self.celery.config_from_object(config_object)
self.task_publisher = task_publisher
def publish(self, task_name, job_id=None, params={}):
if not job_id:
job_id = uuid.uuid4()
self.celery.send_task(task_name, [job_id, params], queue='new_queue')
class config_object(object):
CELERY_IGNORE_RESULT = True
BROKER_PORT = 5672
BROKER_URL = 'amqp://guest:[email protected]'
CELERY_RESULT_BACKEND = 'amqp'
tasks_service = Tasks(config_object)
tasks_service.publish('logger.log_event', params={'a': 'b'})
이것은 내가 그것을 기본 하나에 보내지는 큐를 정의 해달라고하면 내가, 특정 큐에 작업을 보낼 수있는 방법입니다,하지만 난에 보낼 교환을 정의 어떻게 내 질문은?