xbdsky
V2EX  ›  PHP

有这个一个需求,客户上传的图片都是手机拍摄的工地现场图片很大( 3M+),客户要求上传的速度快点,请问要怎么处理?有什么好的优化方案?

  •  
  •   xbdsky · Jan 13, 2017 · 7917 views
    This topic created in 3586 days ago, the information mentioned may be changed or developed.
    补充:图片已前端压缩处理,上传组件是用的 plupload 。
    42 replies  •  2017-01-16 11:04:26 +08:00
    yunhui
    yunhui
    Jan 13, 2017
    1
    加上七牛近源上传
    shoaly
    shoaly
    Jan 13, 2017
    2
    让他们 通过微信发 , 自动压缩处理
    yikyo
    yikyo
    Jan 13, 2017
    3
    不需要清晰度就把图片压缩一下上传。
    shengchao
    shengchao
    Jan 13, 2017
    4
    拍摄照片,可以对图片进行压缩再上传,自己控制好压缩比例,不是太糊就好,如果他们对这个方案不满意,跟他们说换 4g 卡就好了。
    Rice
    Rice
    Jan 13, 2017 via iPhone
    5
    加速是不可能加速的了,只能靠后台异步上传才能维持得了现在的体验。
    deleted
    deleted
    Jan 13, 2017 via Android
    6
    当然是先本地处理下的好
    cevincheung
    cevincheung
    Jan 13, 2017
    7
    @yunhui
    qiniu +1

    But , 还是受限本地带宽。
    jarlyyn
    jarlyyn
    Jan 13, 2017
    8
    cavnas 压下图片啊,很简单的操作。

    手机拍 3m+的图片什么鬼。分辨率明显太高。
    lslqtz
    lslqtz
    Jan 13, 2017
    9
    前端压缩,配合第三方让客户端直接上传。
    spice630
    spice630
    Jan 13, 2017
    10
    @jarlyyn
    3M 还高?高清大图不是 10M 起?
    spice630
    spice630
    Jan 13, 2017
    11
    1.用异步多线程吃满带宽 ~~
    2.压缩后上传
    jarlyyn
    jarlyyn
    Jan 13, 2017
    12
    @spice630

    3mb 不高?

    反正我 a7r2 的图, 4200w 像素也不过 5m 左右。

    抬杠请先注意自己的专业熟练度。
    jarlyyn
    jarlyyn
    Jan 13, 2017
    13
    ericbize
    ericbize
    Jan 13, 2017
    14
    @jarlyyn ??? 6D 2000w 像素一张已经接近 5M 了, 为什么 4200w 也是 5M ?
    spice630
    spice630
    Jan 13, 2017
    15
    @jarlyyn
    你没看见我两句话都是用的问号.
    jarlyyn
    jarlyyn
    Jan 13, 2017
    16
    @ericbize

    前 6d 用户表示。

    6d 的 raw 也不过 20m 左右。请注意自己生成的图片格式。
    ericbize
    ericbize
    Jan 13, 2017
    17
    @jarlyyn 突然记起来了,好像是精细度的设置 , 看来遇到老司机了;记得高中那会,校运会,用了一天 (配 28 ~ 300 ) 手指各种痛,之后就对单反无爱了。
    cevincheung
    cevincheung
    Jan 13, 2017
    18
    webp~
    akira
    akira
    Jan 13, 2017
    19
    线路优化,包括更换 4g ,工地部署 wifi 热点,使用近点机房,对该手机运营商线路更友好的机房等
    数据优化,包括图片压缩,嗯,这个没什么可以处理的点了
    体验优化,包括后台上传,异步上传等

    差不多就这些了吧
    alect
    alect
    Jan 13, 2017
    20
    我不会告诉你让他传 qq 相册的。。。自动压缩,完全够用。。速度还快。。
    Syc
    Syc
    Jan 13, 2017 via Android
    21
    @jarlyyn QuQ 我 MX5 拍一张 2K 照片都几十 M
    gdtv
    gdtv
    Jan 13, 2017
    22
    @jarlyyn 我试过在 iphone 和安卓自带的浏览器里用 cavnas 压缩照片,不行,可能是照片太大。至于出错的现象是什么我忘记了。用小一些的图片就可以。
    run2
    run2
    Jan 13, 2017
    23
    @alect tos 吓死人还是 qq 相册
    appppap
    appppap
    Jan 13, 2017
    24
    分辨率跟格式得考虑,再说大小吧
    ibegyourpardon
    ibegyourpardon
    Jan 13, 2017
    25
    之前我们有个需求接近,后来定的方案是一次性拍完了,回公司再统一导入上传。。
    wdlth
    wdlth
    Jan 13, 2017
    26
    4G 也有近 30Mbps 的上行了,买流量卡吧。
    kuxiazi
    kuxiazi
    Jan 13, 2017
    27
    @shengchao
    @wdlth

    有些工地比较偏远手机信号很差劲的
    alibabamama
    alibabamama
    Jan 13, 2017
    28
    先传一张尽量压缩的预览图,连上 wifi 了再后台默默传清晰的。微信为了用户体验,都提供了预览和查看原图。
    jarlyyn
    jarlyyn
    Jan 13, 2017 via Android
    29
    @gdtv

    Canvas 可以调图片大小啊
    gdtv
    gdtv
    Jan 14, 2017
    30
    @jarlyyn 将原始片 load 到 Canvas 的过程中会挂掉,不知是不是图太大了
    jiangzhuo
    jiangzhuo
    Jan 14, 2017
    31
    如果是应用的话比较好办能拿到的权限多。
    我曾经做过一个方案就是会开蓝牙和热点,跟附近的其他开蓝牙或者热点的后台运行服务的手机通信,将文件分割成比较小的块,将文件快传递给其它的手机,其他的手机后台服务收到后,通过移动蜂巢网络上传收到的部分,然后服务端在收齐所有部分后组合成原文件。理论上只要手机够多能榨干基站的带宽。
    moxiaonai
    moxiaonai
    Jan 14, 2017 via Android
    32
    前端压缩,异步上传
    moxiaonai
    moxiaonai
    Jan 14, 2017 via Android
    33
    前端压缩,异步上传,安利一个插件 lrz ,之前用过效果很好
    jarlyyn
    jarlyyn
    Jan 14, 2017
    34
    @gdtv

    好奇你的业务逻辑。

    做过保修系统。

    一般手机的照片, cavans 调整大小再上传,没什么问题啊。

    手机拍的照片本来就没 3mb 吧。
    NeinChn
    NeinChn
    Jan 14, 2017
    35
    @jarlyyn 我用 3 年前的 Nexus 5 都能拍出 4M 左右的 JPEG...
    虽然大部分照片尺寸都在 1M-2M....
    这个不好说的....
    wohenyingyu02
    wohenyingyu02
    Jan 14, 2017 via iPhone
    36
    直接通过微信上传不就好了?服务器部署 python 用微信库接……
    ZE3kr
    ZE3kr
    Jan 14, 2017 via iPhone
    37
    让他们发到微信服务号,或者做个客户端,调用 imagemagick 压缩, JPEG 质量 60%-70%,调整分辨率。
    jininij
    jininij
    Jan 14, 2017 via Android
    38
    加个上传进度的提示,或者动画效果,就可以让人主观里等待时间缩短 80%。
    realpg
    realpg
    Jan 14, 2017
    39
    js 压缩上传。
    publicAdmin
    publicAdmin
    Jan 14, 2017
    40
    七牛,都不是事!
    TaMud
    TaMud
    Jan 15, 2017
    41
    html5 支持断点分传
    利用这个特性加上进度显示
    客户就会觉的 ok 了
    LancerXin
    LancerXin
    Jan 16, 2017
    42
    主要看需求吧,建议不要轻易压缩图片,万一以后用户需要高清原图呢?

    建议异步后台上传,其实用户讨厌的是上传时的进度条,还没有办法取消,让他们很焦躁,做成类似文件同步盘,后台做上传,重传的逻辑.
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   755 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 84ms · UTC 17:31 · PVG 01:31 · LAX 09:31 · JFK 12:31
    ♥ Do have faith in what you're doing.