coolair
V2EX  ›  问与答

Web 应用中有 CPU 密集型计算应该怎么处理?

  •  
  •   coolair · Apr 3, 2019 · 2122 views
    This topic created in 2622 days ago, the information mentioned may be changed or developed.
    我有一个 Web 应用,其中涉及到文件打包、图片处理等 CPU 密集型计算,我放在 celery 里面处理,但是,celery 执行 task 时,整个机器的 CPU 就飙升到 100%,哪怕是一个用户也是如此,有什么好的解决办法吗?
    11 replies    2019-04-03 14:28:22 +08:00
    cxbeat
        1
    cxbeat  
       Apr 3, 2019 via Android
    试试无服务器函数?
    opengps
        2
    opengps  
       Apr 3, 2019
    用负载均衡,多台机器工作,太合适了
    coldear
        3
    coldear  
       Apr 3, 2019
    AWS Lambda
    hilbertz
        4
    hilbertz  
       Apr 3, 2019
    你只有一个 vcpu 吗
    0ZXYDDu796nVCFxq
        5
    0ZXYDDu796nVCFxq  
       Apr 3, 2019 via Android
    加机器
    murmur
        6
    murmur  
       Apr 3, 2019
    这是个什么东西
    上一个兄弟是在前端跑音频编解码
    coolair
        7
    coolair  
    OP
       Apr 3, 2019
    @murmur 不是在前端,是把数据发到后台,后台跑,跑完返回给用户。
    misaka19000
        8
    misaka19000  
       Apr 3, 2019 via Android
    上 spark
    murmur
        9
    murmur  
       Apr 3, 2019
    @coolair 那也想知道需求 一般的图片水印、切割、转码、验证码都是 c 库,现在的 cpu 占不了多少资源
    coolair
        10
    coolair  
    OP
       Apr 3, 2019
    @murmur 我用的 pillow,50 张 1-2M 大小的图片执行 resize、paste、save 操作,在一台 1 核的 Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz 阿里云服务器上要五六分钟。
    ferock
        11
    ferock  
    PRO
       Apr 3, 2019
    resize 比较耗 cpu
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   826 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 21:06 · PVG 05:06 · LAX 14:06 · JFK 17:06
    ♥ Do have faith in what you're doing.