# celery_pro **Repository Path**: ad-py3/celery_pro ## Basic Information - **Project Name**: celery_pro - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-12-23 - **Last Updated**: 2023-07-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 安装依赖 ```angular2html pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ### 创建项目 ```angular2html django-admin startproject celery_pro python3 manage.py startapp app01 ``` ### 初始化数据库 ```angular2html python3 manage.py makemigrations python3 manage.py migrate ``` ### 异步任务 #### celery步骤 1. 为celery设置环境变量 ```angular2html 在 settings.py 配置 # celery 设置 项目中在celery_pro 中创建 celery.py文件(与setting.py同级) ``` 3. 创建任务tasks ```angular2html 在app01应用中新建 tasks.py文件,并写入要进行处理的任务 接收传输过来的任务参数 ``` 4.编写 view和url ```angular2html 配置url views 并在view中引用task任务 ``` 5.运行项目,开启worker ```angular2html # 启动项目 python3 manage.py runserver 0.0.0.0:8088 # 开启worke,在另一终端, -c 指定worker数量 python3 manage.py celery -A celery_pro worker -c 2 --loglevel=DEBUG ``` 5.调用任务 ```angular2html 浏览器输入 http://192.168.124.128:8088/celery/ woker监听到任务请求时,就会执行耗时任务,如下图 ``` ![img.png](img.png) ### 查看redis数据 ```angular2html select 3 # 3表示几号库. FLUSHALL #清空 ``` ![img_2.png](img_2.png) # 定时任务 ###1. 在settings.py 配置定时任务 # celery 定时任务 ###2. 启动定时任务 ```angular2html python3 manage.py runserver 0.0.0.0:8088 python3 manage.py celery -A celery_pro worker -c 1 --loglevel=DEBUG python3 manage.py celery -A celery_pro beat --loglevel=DEBUG # 最后启动定时任务 ```