在网络中多次查询后,发现大部分错误都是django celery redis的版本冲突导致的,所以遇到异常报错信息,找不到解决办法,可以尝试降低版本。
报错1:task正常执行完成,但之后会出现报错信息 (Signal handler <bound method DjangoWorkerFixup.on_task_postrun of <celery.fixups.django.DjangoWorkerFixup object at 0x0000021DA617BDC8>> raised: DatabaseError("DatabaseWrapper objects created in a thread can only be used in that same thread. The object with alias 'default' was created in thread id 2326343068664 and this is thread id 2326391600584."))
解决办法:降低django的版本为2.2.4,我之前使用的是3.0.5。 (celery版本是4.4.2,python版本是3.7.6, redis版本是3.2.100,环境为Win10)
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Django celery 使用中遇到的坑 - Python技术站