前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python celery配置(并行编程 32)

python celery配置(并行编程 32)

作者头像
用户5760343
发布2019-07-30 10:50:27
1.5K0
发布2019-07-30 10:50:27
举报
文章被收录于专栏:sktj

celery进行配置

app.conf.update( task_serializer='json', accept_content=['json'], result_serializer='json', timezone='Europe/Oslo', enable_utc=True, )

也可以通过另外的config.py

task_serializer = 'json' result_serializer = 'json' accept_content = ['json'] timezone = 'Europe/Oslo' enable_utc = True

app.config_from_file('config.py')

比较常用的celery配置文件

注意,celery4版本后,CELERY_BROKER_URL改为BROKER_URL

BROKER_URL = 'amqp://username:passwd@host:port/虚拟主机名'

指定结果的接受地址

CELERY_RESULT_BACKEND = 'redis://username:passwd@host:port/db'

指定任务序列化方式

CELERY_TASK_SERIALIZER = 'msgpack'

指定结果序列化方式

CELERY_RESULT_SERIALIZER = 'msgpack'

任务过期时间,celery任务执行结果的超时时间

CELERY_TASK_RESULT_EXPIRES = 60 * 20

指定任务接受的序列化类型.

CELERY_ACCEPT_CONTENT = ["msgpack"]

任务发送完成是否需要确认,这一项对性能有一点影响

CELERY_ACKS_LATE = True

压缩方案选择,可以是zlib, bzip2,默认是发送没有压缩的数据

CELERY_MESSAGE_COMPRESSION = 'zlib'

规定完成任务的时间

CELERYD_TASK_TIME_LIMIT = 5 # 在5s内完成任务,否则执行该任务的worker将被杀死,任务移交给父进程

celery worker的并发数,默认是服务器的内核数目,也是命令行-c参数指定的数目

CELERYD_CONCURRENCY = 4

celery worker 每次去rabbitmq预取任务的数量

CELERYD_PREFETCH_MULTIPLIER = 4

每个worker执行了多少任务就会死掉,默认是无限的

CELERYD_MAX_TASKS_PER_CHILD = 40

设置默认的队列名称,如果一个消息不符合其他的队列就会放在默认队列里面,如果什么都不设置的话,数据都会发送到默认的队列中

CELERY_DEFAULT_QUEUE = "default"

设置详细的队列

CELERY_QUEUES = { "default": { # 这是上面指定的默认队列 "exchange": "default", "exchange_type": "direct", "routing_key": "default" }, "topicqueue": { # 这是一个topic队列 凡是topictest开头的routing key都会被放到这个队列 "routing_key": "topic.#", "exchange": "topic_exchange", "exchange_type": "topic", }, "task_eeg": { # 设置扇形交换机 "exchange": "tasks", "exchange_type": "fanout", "binding_key": "tasks", }, }

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.07.28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • celery进行配置
    • 也可以通过另外的config.py
    • app.config_from_file('config.py')
      • 比较常用的celery配置文件
      • 注意,celery4版本后,CELERY_BROKER_URL改为BROKER_URL
      • 指定结果的接受地址
      • 指定任务序列化方式
      • 指定结果序列化方式
      • 任务过期时间,celery任务执行结果的超时时间
      • 指定任务接受的序列化类型.
      • 任务发送完成是否需要确认,这一项对性能有一点影响
      • 压缩方案选择,可以是zlib, bzip2,默认是发送没有压缩的数据
      • 规定完成任务的时间
      • celery worker的并发数,默认是服务器的内核数目,也是命令行-c参数指定的数目
      • celery worker 每次去rabbitmq预取任务的数量
      • 每个worker执行了多少任务就会死掉,默认是无限的
      • 设置默认的队列名称,如果一个消息不符合其他的队列就会放在默认队列里面,如果什么都不设置的话,数据都会发送到默认的队列中
      • 设置详细的队列
      相关产品与服务
      文件存储
      文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档