V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Foxkeh
0.01D
V2EX  ›  问与答

图片上传后服务端压缩 or 客户端压缩后再上传

  •  2
     
  •   Foxkeh · Apr 9, 2021 · 4371 views
    This topic created in 1853 days ago, the information mentioned may be changed or developed.

    背景:

    服务端限制上传大小 2M,但手机拍照上传证件很容易就超了。
    产品经理提出来要在服务端做压缩,我说服务器性能很弱而且很贵,服务器性能甚至连现在主流 2 个手机都比不上,建议在客户端做。
    为了寻找数据支撑,搜了下 Geekbench 跑分,结果给我惊呆了,这服务器已经连现在连现在一个主流手机都赶不上了。

    跑分

    跑分 @Geekbench 单核 多核
    本 ECS(双核 Xeon Gold 6149) 894 2032
    iPhone X(A11-2017) 922 2088
    小米 Mix2S(骁龙 845-2018) 518 2092
    iPhone 12 Pro Max(A14-2020) 1206 4243
    小米 11 Ultra(骁龙 888-2020) 1123 3700

    大家的选择是上传后服务端压缩还是客户端压缩后再上传呢?

    35 replies    2021-04-10 00:28:39 +08:00
    neverfall
        1
    neverfall  
       Apr 9, 2021
    根据需要上传
    neverfall
        2
    neverfall  
       Apr 9, 2021
    图片等多媒体服务 使用三方云服务,应该比自己的机器便宜,上传下载非常占用带宽
    106npo
        3
    106npo  
       Apr 9, 2021 via Android   ❤️ 1
    用户:我今天用你们 app 拍了几张照片,流量用了 1 个多 G,你有什么头绪么?
    woshipanghu
        4
    woshipanghu  
       Apr 9, 2021   ❤️ 1
    原图直接上传到 oss 上面 不走自己的服务器 不占用服务器的带宽
    然后用 oss 的自带的压缩参数展示图片
    qiayue
        5
    qiayue  
    PRO
       Apr 9, 2021
    4#是最常用的做法
    cmdOptionKana
        6
    cmdOptionKana  
       Apr 9, 2021 via Android
    在客户端压缩,节约带宽,节约用户的流量等等都是优点,未见明显缺点。
    misaka19000
        7
    misaka19000  
       Apr 9, 2021
    客户端传 OSS,不走服务端
    JensenQian
        8
    JensenQian  
       Apr 9, 2021 via Android   ❤️ 1
    NXzCH8fP20468ML5
        9
    NXzCH8fP20468ML5  
       Apr 9, 2021 via Android
    Geekbench 就是过来搞笑的,也就测测爆发性能,真的重负载大部分 arm 分分钟被 x86 教做 cpu
    leon0318
        10
    leon0318  
       Apr 9, 2021 via iPhone
    @xxfye m1 打脸吗?
    lagoon
        11
    lagoon  
       Apr 9, 2021
    作为客户端开发,这种一般我们都是客户端压缩后上传。

    这年头的相机,一张照片动不动 3M,甚至更大。这么高清的照片传上去干嘛啊。
    jdhao
        12
    jdhao  
       Apr 9, 2021 via Android
    客户端压缩吧,省流量,并且压缩以后传输速度也快啊,别压缩的太离谱就行了
    kokutou
        13
    kokutou  
       Apr 9, 2021
    相机一张照片几 m 十几 m
    直接传???
    lewinlan
        14
    lewinlan  
       Apr 9, 2021 via Android
    啊这,肯定客户端压缩啊,这还需要问吗
    免费的分布式计算都不用?
    letitbesqzr
        15
    letitbesqzr  
       Apr 9, 2021
    😓 难道不都是客户端压缩?现在一张照片都要接近 10m 了,有些场景上传 9 张的,都要接近 100m 了...
    NXzCH8fP20468ML5
        16
    NXzCH8fP20468ML5  
       Apr 9, 2021 via Android
    @leonme 不打脸。
    M1 作为桌面级 Soc,已经比那些手机上面的 Soc 好不少了,但重负载下还是不如 X86 。
    我队友试过用 M1 来跑 5000 张图像处理,不如 5800U 。
    securityCoding
        17
    securityCoding  
       Apr 9, 2021
    服务端扛不住的,后台下发 token 直传 oss 吧
    draguo
        18
    draguo  
       Apr 9, 2021
    不是相册类应用传原图干啥,存储不要钱吗,传输也慢
    TingHaiJamiE
        19
    TingHaiJamiE  
       Apr 9, 2021
    @xmumiffy 这样的客户一般会先联系运营商客服,“你们流量数据有问题”。
    leon0318
        20
    leon0318  
       Apr 9, 2021
    @xxfye 那 m1 剪辑视频比其他机器流畅很多怎么解释?这算重负载了吧
    dqzcwxb
        21
    dqzcwxb  
       Apr 9, 2021
    移动端透传 oss
    NXzCH8fP20468ML5
        22
    NXzCH8fP20468ML5  
       Apr 9, 2021 via Android
    @leonme 剪视频的时候 CPU 根本没出力。
    cubecube
        23
    cubecube  
       Apr 9, 2021
    你为啥要用 gb 这种来比。。
    实际写两段代码压缩下 jpg 不就行了,另外图像处理,intel 有可能有神油,部分库可以使用 avx2
    muzuiget
        24
    muzuiget  
       Apr 9, 2021
    肯定是客户端啊,免费的分布式计算,顺便省流量。
    tzl
        25
    tzl  
       Apr 9, 2021
    gb 评价标准不一样吧
    msaionyc
        26
    msaionyc  
       Apr 9, 2021 via Android
    @leonme 那是解码器的功劳
    zeropercenthappy
        27
    zeropercenthappy  
       Apr 9, 2021 via Android
    看需求。传证件照一般在客户端压。
    leon0318
        28
    leon0318  
       Apr 9, 2021 via iPhone
    @msaionyc 恕我无知
    leon0318
        29
    leon0318  
       Apr 9, 2021 via iPhone
    @xxfye 恕我无知
    dingwen07
        30
    dingwen07  
       Apr 9, 2021 via Android
    问题根本就不是性能,压缩图片这事儿十年前的处理器都能做,关键在于传到服务器再压缩那服务器就得处理所有用户的压缩操作,而在客户端压缩每个客户端只需要处理自己的。
    coreki
        31
    coreki  
       Apr 9, 2021 via Android
    我是客户端压缩一下,传到 cos
    jiangzhuo
        32
    jiangzhuo  
       Apr 9, 2021
    服務器壓縮的話,客戶端手機流量不要錢嗎?服務器帶寬不要錢嗎?如果真的不在意錢,那當然是上更好配置的服務器咯。
    40EaE5uJO3Xt1VVa
        33
    40EaE5uJO3Xt1VVa  
       Apr 9, 2021
    现在什么几个亿像素,全都是插值插出来,没用。7 8 年前的诺基亚 1020 就这么搞的
    jim9606
        34
    jim9606  
       Apr 10, 2021
    Geekbench 就是个很迷惑的测试,极其偏向 Apple 。
    你自己写个 libjpeg 编码测试都要比 GB 靠谱。
    不过还是建议客户端压缩,原生相机 APP 直出几 MB 证件照片完全没必要。
    0ZXYDDu796nVCFxq
        35
    0ZXYDDu796nVCFxq  
       Apr 10, 2021
    大多数服务商都是下行流量不要钱而且比上行带宽要大
    所以带宽支出并不是一个问题

    不过还是建议客户端压缩,毕竟节省 CPU 资源而且给用户省流量
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3360 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 110ms · UTC 11:28 · PVG 19:28 · LAX 04:28 · JFK 07:28
    ♥ Do have faith in what you're doing.