跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 去年写的一个小 library —— Django 3 不需要额外 worker 的后台任务处理
未分類
21 5 月 2020

去年写的一个小 library —— Django 3 不需要额外 worker 的后台任务处理

去年写的一个小 library —— Django 3 不需要额外 worker 的后台任务处理

資深大佬 : ericls 1

简单用例:

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") 

这里 task1 和 task2 都会在 view 返回后执行。

这个东西不能替代 celery,只适合一些简短且不 critical 的任务。虽有有一些机制控制并发数量和结束应用前等待队列清空。

这个原理很简单,但是如果每个项目都自己写一个又很麻烦 所以就整理了一下。 有兴趣的请点下面的链接:

View on PyPI

View on GitHub

Read the docs

大佬有話說 (4)

  • 資深大佬 : hjahgdthab750

    django-q 除了强制时区的问题以外,挺好用的

  • 主 資深大佬 : ericls

    @hjahgdthab750 是的 django-q 用过两次 觉得可以代替 celery 。 但是 Celery 毕竟还是最熟悉

  • 資深大佬 : hjahgdthab750

    @ericls celery 实在是太重了

  • 主 資深大佬 : ericls

    @hjahgdthab750 项目更重的时候 celery 就显得很轻了 哈哈

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具