V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ssllff123
V2EX  ›  问与答

celery+rabbitmq ,为什么不是在 celery 队列里面存

  •  
  •   ssllff123 · 2016-11-26 10:55:15 +08:00 · 1910 次点击
    这是一个创建于 2918 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用 celery+rabbitmq 写爬虫。

    用的默认的队列设置,也就是没有配置队列,按照文档的说法,应该是存在 celery 的队列里面。但是实际的结果并不是这样。

    好像每个任务存在一个队列里面,队列数量在不停地增加。 这里是队列的信息。

    所以,这样的问题是,随着队列的变大,程序变得越来越慢, celery 在心跳检测连接队列的时间越来越长。 segmentfault 地址,这里不知道怎么贴图片 https://segmentfault.com/q/1010000007606923

    3 条回复    2016-11-28 13:27:11 +08:00
    julyclyde
        1
    julyclyde  
       2016-11-26 16:56:16 +08:00
    按什么软件的默认?按什么文档的说法?

    celery 本来就不是队列,就没有保存任何内容的功能
    20150517
        2
    20150517  
       2016-11-26 19:45:20 +08:00
    我用过 celery+redis,队列当然是存在 redis 之类的,celery 只是代码,又不能存储,你是这意思吗
    ssllff123
        3
    ssllff123  
    OP
       2016-11-28 13:27:11 +08:00   ❤️ 1
    我已经解决了,如果用 celery , backend 不要用 rabbitmq ,因为, celery 会自动给每个任务的结果建立一个队列,所以队列越来越多,越来越多。

    celery 确实不是队列,可能我的问题没有描述清楚。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2455 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:18 · PVG 08:18 · LAX 16:18 · JFK 19:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.