【发布时间】:2016-11-07 18:12:03
【问题描述】:
我已经思考了几天最好的方法。
我正在销售我正在制造的商品 但是我出售的商品可以由其他商品组成 而那些其他项目可以由其他项目组成,依此类推。
创建销售订单后,我想触发创建此项目所需的所有项目的内部销售订单的过程,因此它应该是某种递归。
无法生产的最终项目有一个标志 is_production=False 所以我知道我不必更深入
为此,我正在考虑在 view.py 中创建一个方法,该方法将通过确认我的销售订单来触发。但我担心,由于我无法预测制造产品的复杂性,它会花费很长时间,并且性能成本会很高。同样存在永无止境的循环的风险。 所以可能在视图中这样做不是一个好主意,我正在考虑替代方案,通过调查,我应该用 django-celery 之类的东西来实现它
问题,因为我以前从未使用过 django celery,我想确认我的理解: django-celery 是解决我的要求的最佳且唯一的选择吗?
【问题讨论】:
-
您可以使用基于 Redis 的 Django RQ,并且配置起来更简单stackoverflow.com/questions/38106696/…python-rq.org/patterns/django
-
但是Redis是DB和异步任务队列/作业队列?
-
Redis 是轻量级的,它也可以而且应该用作 Django 的缓存引擎。一旦你开始使用它,你会发现它非常有用。它是用 C 编码的,所以速度非常快。
-
实际上 Redis 是一个键/值存储,具有大量不同的功能
-
使用python的包装器github.com/andymccurdy/redis-py
标签: django recursion django-celery