服务端限制上传大小 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 |
大家的选择是上传后服务端压缩还是客户端压缩后再上传呢?
1
neverfall 2021-04-09 10:43:48 +08:00
根据需要上传
|
2
neverfall 2021-04-09 10:44:36 +08:00
图片等多媒体服务 使用三方云服务,应该比自己的机器便宜,上传下载非常占用带宽
|
3
xmumiffy 2021-04-09 10:46:45 +08:00 via Android 1
用户:我今天用你们 app 拍了几张照片,流量用了 1 个多 G,你有什么头绪么?
|
4
woshipanghu 2021-04-09 10:52:12 +08:00 1
原图直接上传到 oss 上面 不走自己的服务器 不占用服务器的带宽
然后用 oss 的自带的压缩参数展示图片 |
5
qiayue 2021-04-09 10:55:51 +08:00
4#是最常用的做法
|
6
cmdOptionKana 2021-04-09 10:56:10 +08:00 via Android
在客户端压缩,节约带宽,节约用户的流量等等都是优点,未见明显缺点。
|
7
misaka19000 2021-04-09 11:29:28 +08:00
客户端传 OSS,不走服务端
|
8
JensenQian 2021-04-09 11:34:25 +08:00 via Android 1
|
9
NXzCH8fP20468ML5 2021-04-09 11:39:00 +08:00 via Android
Geekbench 就是过来搞笑的,也就测测爆发性能,真的重负载大部分 arm 分分钟被 x86 教做 cpu
|
11
lagoon 2021-04-09 11:42:47 +08:00
作为客户端开发,这种一般我们都是客户端压缩后上传。
这年头的相机,一张照片动不动 3M,甚至更大。这么高清的照片传上去干嘛啊。 |
12
jdhao 2021-04-09 11:43:39 +08:00 via Android
客户端压缩吧,省流量,并且压缩以后传输速度也快啊,别压缩的太离谱就行了
|
13
kokutou 2021-04-09 11:51:15 +08:00
相机一张照片几 m 十几 m
直接传??? |
14
lewinlan 2021-04-09 11:56:55 +08:00 via Android
啊这,肯定客户端压缩啊,这还需要问吗
免费的分布式计算都不用? |
15
letitbesqzr 2021-04-09 12:04:18 +08:00
😓 难道不都是客户端压缩?现在一张照片都要接近 10m 了,有些场景上传 9 张的,都要接近 100m 了...
|
16
NXzCH8fP20468ML5 2021-04-09 12:16:09 +08:00 via Android
|
17
securityCoding 2021-04-09 12:19:09 +08:00
服务端扛不住的,后台下发 token 直传 oss 吧
|
18
draguo 2021-04-09 13:50:08 +08:00
不是相册类应用传原图干啥,存储不要钱吗,传输也慢
|
19
TingHaiJamiE 2021-04-09 15:32:40 +08:00
@xmumiffy 这样的客户一般会先联系运营商客服,“你们流量数据有问题”。
|
21
dqzcwxb 2021-04-09 17:41:54 +08:00
移动端透传 oss
|
22
NXzCH8fP20468ML5 2021-04-09 18:34:30 +08:00 via Android
@leonme 剪视频的时候 CPU 根本没出力。
|
23
cubecube 2021-04-09 20:21:31 +08:00
你为啥要用 gb 这种来比。。
实际写两段代码压缩下 jpg 不就行了,另外图像处理,intel 有可能有神油,部分库可以使用 avx2 |
24
muzuiget 2021-04-09 20:24:40 +08:00
肯定是客户端啊,免费的分布式计算,顺便省流量。
|
25
tzl 2021-04-09 20:35:20 +08:00
gb 评价标准不一样吧
|
27
zeropercenthappy 2021-04-09 21:11:09 +08:00 via Android
看需求。传证件照一般在客户端压。
|
30
dingwen07 2021-04-09 21:18:43 +08:00 via Android
问题根本就不是性能,压缩图片这事儿十年前的处理器都能做,关键在于传到服务器再压缩那服务器就得处理所有用户的压缩操作,而在客户端压缩每个客户端只需要处理自己的。
|
31
coreki 2021-04-09 22:06:54 +08:00 via Android
我是客户端压缩一下,传到 cos
|
32
jiangzhuo 2021-04-09 22:16:33 +08:00
服務器壓縮的話,客戶端手機流量不要錢嗎?服務器帶寬不要錢嗎?如果真的不在意錢,那當然是上更好配置的服務器咯。
|
33
40EaE5uJO3Xt1VVa 2021-04-09 23:30:56 +08:00
现在什么几个亿像素,全都是插值插出来,没用。7 8 年前的诺基亚 1020 就这么搞的
|
34
jim9606 2021-04-10 00:23:55 +08:00
Geekbench 就是个很迷惑的测试,极其偏向 Apple 。
你自己写个 libjpeg 编码测试都要比 GB 靠谱。 不过还是建议客户端压缩,原生相机 APP 直出几 MB 证件照片完全没必要。 |
35
0ZXYDDu796nVCFxq 2021-04-10 00:28:39 +08:00
大多数服务商都是下行流量不要钱而且比上行带宽要大
所以带宽支出并不是一个问题 不过还是建议客户端压缩,毕竟节省 CPU 资源而且给用户省流量 |