无需其他服务即可运行的Django 3任务运行器
项目描述
Django Simple Task
django-simple-task
在Django 3中运行后台任务,无需其他服务和工作进程。它在与您的ASGI应用程序相同的事件循环中运行它们。它不如Celery这样的正确任务运行器具有弹性,但对于一些简单任务来说,具有更少的总体开销。
指南
安装包
pip install django-simple-task
将其添加到已安装的应用程序中
# settings.py
INSTALLED_APPS = [
...
'django_simple_task'
]
应用ASGI中间件
# asgi.py
from django_simple_task import django_simple_task_middlware
application = django_simple_task_middlware(application)
在Django视图中调用后台任务
from django_simple_task import defer
def task1():
time.sleep(1)
print("task1 done")
async def task2():
await asyncio.sleep(1)
print("task2 done")
def view(requests):
defer(task1)
defer(task2)
return HttpResponse(b"My View")
需要使用ASGI服务器运行Django。 官方文档
配置
可以通过将DJANGO_SIMPLE_TASK_WORKERS
添加到设置中来控制并发级别。默认为1
。
项目详情
关闭
django-simple-task-0.1.2.tar.gz 的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | c70c5fd1db9ba58026ea3a00831c2c1a4d335f29c106321bb2dce643b7a71319 |
|
MD5 | 77a48d7db550139e4e8d97ad2f62f1fb |
|
BLAKE2b-256 | 5fbaabc186afbb92f5e10a46967afd58e31d66abea6421fd645fbec598ff3ba1 |
关闭
django_simple_task-0.1.2-py3-none-any.whl 的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | fe6494f5297711f5ec767835163dad3e4f6b751aa8857f0c338e5271a0721a4f |
|
MD5 | 3fde8f9e389cc3b5f5cc5f96534a73f8 |
|
BLAKE2b-256 | 827893daa3c370c297ada1c5a8eec16b85022cb311a14c3138b4319135346361 |