python - 从 Celery 结果后端 MYSQL 查询结果

标签 python mysql celery

从 celery 中的结果后端查询所有结果的最简单方法是什么?我使用 MySQL 数据存储作为结果后端。

Celery 将结果存储为 BLOB 类型,因此我无法以纯文本形式检索结果。

如果您想知道我为什么这样做,用例是查询 Celery 执行的所有任务的结果。

最佳答案

结果不存储为任意 BLOB 类型,Celery 使用 SQLAlchemy 作为数据库后端并将结果存储为 PickleType (参见Celery code)。从文档到 PickleType:

PickleType builds upon the Binary type to apply Python’s pickle.dumps() to incoming objects, and pickle.loads() on the way out, allowing any pickleable Python object to be stored as a serialized binary field.

因此,您应该能够简单地对所选数据使用 pickle.loads()

关于python - 从 Celery 结果后端 MYSQL 查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55894242/

相关文章:

python - 找到最低的测试分数和两个高分的平均值

python - Pandas 从网址读取_csv

Mysql "Where"子句的多个参数

php - 如何使用文本框值更改 url

python - 如何在 celery - rabbitmq 设置中设置消费者优先级?

python - 输出为 html 时如何增加 jupyter 笔记本/实验室单元宽度

python - 检查一系列字典中的公共(public)键

php - 无法使用 codeigniter 将值插入数据库

python - 在 celery 中流式传输结果

python-3.x - 在 centos 7 上使用 systemd 守护 celery