我的目錄結構是這樣的
**就是參考celery官方教程寫的了.
# -*- coding: utf-8 -*-
from __future__ import absolute_import, unicode_literals
from celery import celery
__author__ =
"liunan"
__date__ =
"2020/12/16 4:31 下午"
from
.celery_cfg import backend, brokers
'imcenter'
, broker=brokers,
backend=backend,
include=
['imcenter.tasks'])
result_expires=
3600,)
'asia/shanghai'
# -*- coding: utf-8 -*-
from __future__ import absolute_import, unicode_literals
__author__ =
"liunan"
__date__ =
"2020/12/16 4:31 下午"
# -*- coding: utf-8 -*-
import logging
import time
import jpush
from
_logger = logging.getlogger(__name__)
defmypush
(a,b,c,d)
:# 生產環境推送
print
('傳送簡訊中'
)
# -*- coding: utf-8 -*-
__author__ =
"liunan"
__date__ =
"2020/12/16 4:31 下午"
brokers =
"redis://:password@localhost:6379/1"
backend =
"redis://:password@localhost:6379/2"
切換到celery所在專案的目錄
完事兒了, 就這麼簡單. 生產者呼叫task就行了.
這樣
from openerp.imcenter.celery import
task_args =(1
,2,3
,4)'imcenter.tasks.mypush'
,args=task_args)
task.delay()
mypush.delay(1,
2,3,
4)
常用可以接受複雜的引數
routing_key:自定義路由鍵
queue:指定傳送到哪個佇列
exchange:指定傳送到哪個交換機
priority:任務佇列的優先順序,0到255之間,對於rabbitmq來說0是最高優先順序
headers:為任務新增額外的訊息
# 任務my_task將會被傳送到my_queue佇列中,並且在傳送10秒之後執行。(1
,2,3
,4), queue=
'my_queue'
, countdown=
10)
不建議用,因為不會校驗是否存在這個方法,直接就傳送成功裡,celery執行就會報錯安裝
$ pip install flower
執行
flower --port=5555
或者$ celery flower --address=127.0.0.1 --port=5555
開啟 http://localhost:5555:
在django專案中使用celery非同步傳送郵件
一 在專案虛擬環境中安裝celery和redis 在tasks.py中新增如下 from celery import celery from django.conf import settings from django.core.mail import send mail django環境初始化 ...
gradle在專案中的應用
compilesdkversion 代表是使用的sdk版本buildtoolsversion 代表構建工具的版本,一般都是sdk相配套的。在專案建立的時候就會自動生成signingconfigs 簽名配置,主要有 develop,release develop 開發時候的配置keyalias apk...
Kibana在專案中的應用
雖然本文主要闡釋kibana 在專案中的應用 但是我們需要了解乙個常識,那就是一般情況下elk都是組合應用的,在我們的專案中我們也是一起使用的,但是由於對kibana 的頗具熱情,所以本文是對kibana的初始 先說下專案背景,我是datawarehouse 的 免不了會對些個datastage j...