
celery
我的一亩三分地儿
做点事情!
展开
-
celery初级教程(七)
我们如何使用celery执行一些周期性任务呢? celery beat是一个调度器,它可以周期内指定某个worker来执行某个任务。如果我们想周期执行某个任务需要增加beat_schedule配置信息. celeryconfig.py配置信息如下: ROKER_URL = 'redis://:332572@127.0.0.1:6379/1' CELERY_RESULT_BACKEND =原创 2017-09-20 23:59:32 · 708 阅读 · 0 评论 -
celery初级教程(六)
1. signature 我们到目前为止只是学习了如何使用delay()方法,当然这个方法也是非常常用的。但是有时我们并不想简单的将任务发送到队列中,我们想将一个任务函数(由参数和执行选项组成)作为一个参数传递给另外一个函数中,为了实现此目标,Celery使用一种叫做signatures的东西。 一个signature包装了一个参数和执行选项的单个任务调用。我们可将这个signature传原创 2017-09-20 23:53:12 · 474 阅读 · 0 评论 -
celery初级教程(五)
假如我们有两个worker,一个worker专门用来处理邮件发送任务和图像处理任务,一个worker专门用来处理文件上传任务。 我们创建两个队列,一个专门用于存储邮件任务队列和图像处理,一个用来存储文件上传任务队列。 Celery支持AMQP(Advanced Message Queue)所有的路由功能,我们也可以使用简单的路由设置将指定的任务发送到指定的队列中. 我们需要配置在celery原创 2017-09-20 23:44:58 · 517 阅读 · 0 评论 -
celery初级教程(四)
将任务加入到broker队列中,以便刚才我们创建的celery workder服务器能够从队列中取出任务并执行。如何将任务函数加入到队列中,可使用delay()函数或者apply_asyn()函数,后者会提供更多任务执行的控制。 调用任务,可使用delay()方法: my_task.delay(2, 2) 也可以使用apply_async()方法,该方法可让我们设置一些任务执行的参数,例原创 2017-09-20 23:42:24 · 454 阅读 · 0 评论 -
celery初级教程(一)
我们在做网站后端程序开发时,会碰到这样的需求:用户需要在我们的网站填写注册信息,我们发给用户一封注册激活邮件到用户邮箱,如果由于各种原因,这封邮件发送所需时间较长,那么客户端将会等待很久,造成不好的用户体验. 那么怎么解决这样的问题呢? 我们将耗时任务放到后台异步执行。不会影响用户其他操作。除了注册功能,例如上传,图形处理等等耗时的任务,都可以按照这种思路来解决。 如何原创 2017-09-20 23:11:14 · 3912 阅读 · 0 评论 -
celery初级教程(二)
Celery使用简单,配置也非常简单。Celery有很多配置选项能够使得celery能够符合我们的需要,但是默认的几项配置已经足够应付大多数应用场景了。 配置信息可以直接在app中设置,或者通过专有的配置模块来配置。 1.直接通过app来配置 from celery import Celery app = Celery('demo') # 增加配置 app.conf.update(原创 2017-09-20 23:31:01 · 542 阅读 · 0 评论 -
celery初级教程(三)
在项目中如何使用celery?首先创建python项目,我的项目目录结构为: TestCelery/ ├── proj │ ├── celeryconfig.py │ ├── celery.py │ ├── init.py │ └── tasks.py └── test.py celery.py内容如下: from celery import Celery原创 2017-09-20 23:37:15 · 667 阅读 · 1 评论