草庐IT

celery_worker

全部标签

python - Tornado celery 集成黑客

由于没有人提供解决方案thispost再加上我迫切需要一个解决方法,这是我的情况和一些抽象的解决方案/想法供辩论。我的堆栈:TornadoceleryMongoDBRedisRabbitMQ我的问题:找到一种方法让Tornado分派(dispatch)celery任务(已解决),然后异步收集结果(有什么想法吗?)。场景1:(请求/响应hack加webhook)Tornado收到一个(用户)请求,然后在本地内存(或Redis)中保存一个{jobID:(user)request}以记住将响应传播到哪里,并使用jobID触发celery任务当celery完成任务时,它会在某个url执行web

python - 如何在 Celery-Django 应用程序中监视来自 worker 的事件?

根据有关real-timemonitoringofceleryworkers的celery教程,还可以通过编程方式捕获worker产生的事件并采取相应的行动。我的问题是如何将监视器集成为this中的监视器例如,在Celery-Django应用程序中?编辑:本教程中的代码示例如下所示:fromceleryimportCelerydefmy_monitor(app):state=app.events.State()defannounce_failed_tasks(event):state.event(event)task_id=event['uuid']print('TASKFAILED:

python - celery + Django : Cannot start celerybeat on Windows 7

我一直在开发Django应用程序,现在我正在尝试为后台任务添加Celery。我需要对正常任务和周期性任务进行排队。我可以很好地启动celeryd,并用它执行任务(我用命令pythonmanage.pycelerydstart--settings=settings--loglevel=INFO启动它)。在Windows上,您不能执行-beat/-b来启用节拍模式;您需要将celerybeat作为一项单独的服务启动(这在Celery文档的常见问题解答部分中有说明)。如果我在命令行中键入它——pythonmanage.pycelerybeat-sdjcelery.schedulers.Dat

python - Celery:自动发现在应用程序中找不到任务模块

我使用全新安装的celery和django1.4进行了以下设置:设置.py:importdjcelerydjcelery.setup_loader()BROKER_HOST='localhost'BROKER_PORT=5672BROKER_USER='user'BROKER_PASSWORD='password'BROKER_VHOST='test'[...]INSTALLED_APPS=['django.contrib.auth','django.contrib.admin','django.contrib.contenttypes','django.contrib.session

python - Celery - RabbitMQ 中的一条消息可以同时被两个或多个工作人员使用吗?

也许我问这个问题很愚蠢,但在我做进一步的工作之前我需要先了解一下基本概念。我正在处理几千个RSS提要,使用多个Celery工作节点和一个RabbitMQ节点作为代理。每个提要的URL都作为消息写入队列中。工作人员只是从队列中读取URL并开始处理它。我必须确保单个RSS提要不会被两个工作人员同时处理。文章Ensuringataskisonlyexecutedoneatatime提出了一种基于Memcahced的解决方案,用于在处理提要时锁定提要。但我想了解的是,为什么我需要使用Memcached(或其他东西)来确保RabbitMQ队列上的消息不会被多个工作人员同时使用。我可以对Rabbi

java - 从 Java 与 Django/Celery 互操作

我们公司有一个基于Python的网站和一些基于Python的工作节点,它们通过Django/Celery和RabbitMQ进行通信。我有一个基于Java的应用程序,需要将任务提交给基于Celery的工作人员。我可以很好地将工作从Java发送到RabbitMQ,但是基于Celery的工作人员永远不会接手这些工作。通过查看两种类型的作业提交的数据包捕获,存在差异,但我无法理解如何解释它们,因为很多都是二进制的,我找不到有关解码的文档。这里有人对Java/RabbitMQ和Celery协同工作有任何引用或经验吗? 最佳答案 我找到了解决方

python - Celery 计划任务中的打印语句不会出现在终端中

当我运行celery-Atasks2.celeryworker-B时,我想看到每秒打印一次“celerytask”。当前没有打印任何内容。为什么这不起作用?fromappimportappfromceleryimportCeleryfromdatetimeimporttimedeltacelery=Celery(app.name,broker='amqp://guest:@localhost/',backend='amqp://guest:@localhost/')celery.conf.update(CELERY_TASK_RESULT_EXPIRES=3600,)@celery.t

python - celery-django 找不到设置

我有一个使用Celery运行异步任务的Django项目。我正在WindowsXP机器上进行开发。启动我的Django服务器(pythonmanage.pyrunserver80)工作正常,但尝试启动Celery守护进程(pythonmanage.pycelerydstart)失败,出现以下错误:ImportError:Couldnotimportsettings'src.settings'(Isitonsys.path?Doesithassyntaxerrors?):没有名为src.settings的模块sys.path包括'C:\development\SpaceCorps\src'

python - Django Celery 发送注册电子邮件不起作用

我正在学习celery。在我的网站上,我让人们注册一个帐户。一旦他们创建了一个新帐户,它会自动向他们的用户电子邮件地址发送一封激活电子邮件。一切正常,但现在我想使用Celery异步发送电子邮件。我使用RabbitMQ作为代理,版本3.1.5和Celery3.1.7(最新版本),因为他们说这个版本不需要djcelery。所以我只需要安装Celery。我按照celery网站上的说明进行操作,Configuratemydjango。proj--proj/celery.py这是我的celery.py:from__future__importabsolute_importimportosfrom

python - Pickle 拒绝使用 celery 报告 ContentDisallowed : Refusing to deserialize untrusted content of type pickle 来序列化内容

我正在尝试将一些python对象主要是json可序列化,除了datetime.datetime放在rabbitmq队列中,因此使用pickle进行序列化。celery_config文件:CELERY_TASK_SERIALIZER='pickle'CELERY_RESULT_SERIALIZER='pickle'它抛出一个异常说:File"/usr/local/lib/python2.7/dist-packages/kombu/serialization.py",line174,inloadsraiseself._for_untrusted_content(content_type,'