Wallace007
V2EX  ›  问与答

请问 celery 和线程池有什么不一样或者应用场景有何不同,不怎么懂

  •  
  •   Wallace007 · Jun 5, 2019 · 3147 views
    This topic created in 2557 days ago, the information mentioned may be changed or developed.

    我知道两者都是解决线程并发的,刚熟悉了线程池,也看了 celery,还请大佬讲解

    2 replies    2019-06-06 02:09:35 +08:00
    ynkkdev
        1
    ynkkdev  
       Jun 5, 2019   ❤️ 1
    1. 由于 GIL,python 的线程池只能用来处理 IO 密集操作,无法利用多核优势。
    2."两者都是解决线程并发",celery 可以是分布式的。不同于线程池这种比较原生的写法,celery 一个庞大的框架,依赖于消息队列,你可以把 IO、CPU 密集的任务,传递给不同机器上的 celery worker 来进行处理,在 celery 的 task 函数里你可以在定制你的异步处理策略——多线程、多进程、协程。
    baojiweicn2
        2
    baojiweicn2  
       Jun 6, 2019 via Android
    celery 是分布式任务框架,简单来说他是队列,队列。。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2817 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 01:24 · PVG 09:24 · LAX 18:24 · JFK 21:24
    ♥ Do have faith in what you're doing.