Celery3 迁移到 celery4 遇到的问题
来源:互联网 发布:千峰java在哪里 编辑:程序博客网 时间:2024/06/05 05:45
今天将老项目中的 celery3
更新到 celery4
。出现了一些问题,这里做一个记录,方便以后查看。如果有人也遇到同样的问题,可以作为参考,少走弯路。
更新
最简单的更新方式当然是pip, ;)
pip install -U celery==4.1.0
遇到的问题
1. kombu.exceptions.EncodeError: Object of type 'Message' is not JSON serializable
我的任务函数的参数是一个自定义的对象实例,4.0版本默认是使用 JSON
序列化的,而 JSON
支持的类型有限,不包括自定义类实例。
解决:
将task_serializer
设置成 pickle
2. celery.exceptions.ImproperlyConfigured
版本4对很多配置的名称进行了变更,所以更改配置名称就可以了
报错提示:
Cannot mix new and old setting keys, please rename thefollowing settings to the new format:CELERY_RESULT_BACKEND -> result_backend
解决: CELERY_RESULT_BACKEND
配置名称修改为 result_backend
3. TypeError: can_read() got an unexpected keyword argument 'timeout'
这个问题不是celery 的问题,我项目里使用了redis作为消息中间件,这个问题是由于redis的版本问题导致的,我原来的版本是2.10.3,与celery4 不完全兼容。
解决:
pip install -U redis==2.10.6
4. kombu.exceptions.ContentDisallowed: Refusing to deserialize untrusted content of type pickle (application/x-python-serialize)
默认情况下celery4不会接受pickle
类型的消息,所以报这个错误
解决:
将 accept_content
设置成 [‘pickle’] 就行了
阅读全文
0 0
- Celery3 迁移到 celery4 遇到的问题
- Tomcat6 迁移到 WebLogic10 遇到的问题.
- 数据库2000迁移到2005遇到的问题
- ArcEngine从 9.3迁移到10遇到的问题
- Oss程序迁移到Alsa时遇到的问题
- Oss程序迁移到Alsa时遇到的问题
- sql server 2005数据库迁移到oracle10g遇到的问题
- Berkeley DB迁移到PostgreSQL遇到的问题
- 小心陷阱: 迁移应用到Cluster遇到的Timer问题
- 项目迁移到Linux WebLogic遇到的问题与解决
- Eclipse 工程迁移到 AS 遇到的一些问题
- MyEclipse工程迁移到Eclipse遇到的问题
- qt4项目迁移到qt5,遇到的问题及解决办法
- hexo-迁移到linux所遇到的问题
- 网站迁移到新服务器遇到的问题
- C#web引用迁移到遇到问题
- 我做的一个web项目从tomcat迁移到weblogic遇到的问题
- 将DAL层从Sql Server 迁移到 Access 时遇到的问题
- CXF restful springmvc+mybatis
- go语言实现第一个程序-hello,world!
- 主从复制
- StringRedisTemplate常用操作
- 【mysql 索引】mysql 添加索引
- Celery3 迁移到 celery4 遇到的问题
- springmvc常用注解
- Eclipse Oxygen启动报Error Could not create java virtual machine的错误解决
- myeclipse常用快捷键大全
- html 多级菜单
- 基于tiny4412按键中断驱动的poll、select函数演示
- API自动生成工具
- Spring-boot中读取config配置文件的两种方式
- Zend Studio中如何配置和使用xdebug断点调试工具?