Tag: сельдерей

AttributeError: объект 'module' не имеет атрибута 'celery'

Я слежу за документацией на сельдерей. v:latest я установил все зависимости, а версия для сельдерея 3.0.11. Я сделал файл tasks.py и вставил код: from celery import Celery app = Celery('tasks', broker='amqp://guest@localhost//') @app.task def add(x, y): return x + y Когда я запускаю команду «Далее» в том же каталоге: celery -A tasks worker –loglevel=info Я получаю […]

Сельдерей бросает длинное сообщение об ошибке

Я пытаюсь запустить код стартера для сельдерея на своем веб-сайте ( http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.html ), и я запускаю экземпляр сервера RabbitMQ в фоновом режиме. Однако, я получаю длинное сообщение об ошибке: >>> from celery import Celery >>> app = Celery('tasks', broker='pyamqp://guest@localhost//') >>> @app.task … def add(x, y): … return x + y … >>> >>> add.delay(4, 4) […]

Как перечислить поставленные в очередь предметы в сельдерее?

У меня есть проект Django на узле Ubuntu EC2, который я использовал для настройки асинхронного использования Celery . Я следую http://michal.karzynski.pl/blog/2014/05/18/setting-up-an-asynchronous-task-queue-for-django-using-celery-redis/ вместе с документами. Я смог получить основную задачу, работающую в командной строке, используя: (env1)ubuntu@ip-172-31-22-65:~/projects/tp$ celery –app=myproject.celery:app worker –loglevel=INFO Я просто понял, что у меня есть множество задач в моей очереди, которые не выполнялись: [2015-03-28 […]

Работники сельдерей не потребляют достаточно задач

У меня странная проблема с сельдереем. Я использую RabbitMQ как брокер сообщений и конечный сервер. Задачи сериализуются через pickle, но они получают только идентификатор файла в базе данных. Они извлекают его, выполняют некоторую работу и записывают результат обратно в базу данных. Я просто храню идентификатор в базе данных результата. Я использую группу для выполнения задач […]

Как провалить цепочку, если ее подзадача дает исключение

Я столкнулся с довольно странной проблемой с сельдереем: Существует цепочка задач, и одна из них дает исключение и выполняет несколько попыток chain = (err.si(1) | err.si(2)) result = chain.apply_async() result.state result.get() вот код задачи: @celery.task(base=MyTask) def err(x): try: if x < 3: raise Exception else: return x+1 except Exception as exp: print "retrying" raise err.retry(args=[x],exc=exp,countdown=5,max_retries=3) […]

Как отменить задачу Сельдерея при развертывании в Хероку

Когда мои новые версии моего приложения django развернуты в heroku, рабочие вынуждены перезапускаться. У меня есть некоторые длительные задачи, которые должны выполнить некоторую очистку до того, как вас убьют. Я пробовал зарегистрировать hook_work, который не кажутся вызываемым. Я также попробовал ответить в задаче Notify celery для закрытия рабочего стола, но я не понимаю, как прервать […]

Внедрите zeromq издателя в django с сельдереем (Broker redis)

Мне нужно внедрить zmq издателя в django и celery с redis в качестве брокера. Но мой клиент ничего не получает. tasks.py from celery import task import zmq try: context = zmq.Context() publisher = context.socket(zmq.PUB) publisher.bind('tcp://192.168.0.14:9997') except: pass def app_delivery(): publisher.send("testid : I am a task ") return "Passed" @task.task(ignore_result=True) def add(): print "I am going […]

Перезапуск длинных заданий в группе после смерти работника

Я использую Celery для запуска тысяч задач, для выполнения каждой задачи требуется несколько минут. Код ниже – моя простая замена для multiprocessing.pool.Pool.map : def map(task, data): """ Perform the *task* on *data* in distributed way. Blocks until finished. """ ret = celery_module.group(task.s(val) for val in data).apply_async() return ret.get(interval = 0.1) Это работает как шарм, пока […]

Правильный асинхронный стохастический градиентный спуск с сельдереем

Я должен использовать сельдерей для параллелизации алгоритма стохастического градиентного спуска, хотя, возможно, это не лучший выбор для использования с сельдереем, это еще мой вопрос =) Алгоритм выглядит так, где datas – матрица образцов: #Random init of the minimum: x_current = np.random.random(n_dim) for i in range(max_iter): #Randomizes the lines, ie the samples of the minibatches at […]

Использование html-шаблонов для отправки писем в python

Привет, Я пытаюсь написать отдельную почтовую службу, которая отключена с помощью нашего флеш-приложения. Поэтому я ищу способ отправки приветственных писем, когда пользователи впервые регистрируются в нашем фляжном приложении. Я использую Celery и rabbitmq, чтобы сделать это асинхронно. Вот моя электронная почта – sen = 'example@gmail.com' pwd = 'my_password' @celery.task def send_email(nickname, email): msg = MIMEMultipart('alternative') […]

Interesting Posts for Van-Lav
Python - лучший язык программирования в мире.