谷姐:我们都是谷歌迷
We are all Google fans

网站图片全部使用base64可行吗?-buyabag

Rate this post

站群,一台杜甫,本地静态文件(html、图片)总数大概一两千万,单个图片容量小于500k。最近服务器的磁盘io一直100%,队列高达10左右,硬盘先要撑不住了。

现在能想到几种办法,硬件上的是:
1.加大内存,128G以上的内存做文件缓存,应该能缓解。
2.使用raid0 / 增加多台机器,简单粗暴。
3.直接一步到位上SSD,从根本上解决io问题。

此外我还有个软件上的想法:将所有图片直接编码为base64,插入到本地静态html中,每次用户访问可以减少10次左右的图片文件读取,这样是否也会极大的缓解磁盘io压力?

优点是,由于目前磁盘储存空间充足,cpu性能充足,这种方案不需要折腾数据迁移,且成本不变,只需要花点时间修改程序,重新生成一遍html即可。 当然代价是cpu、硬盘储存空间和图片的后期维护性。

请问各位d大的,这种base64储存图片的方案,是否可行呢?

热议
推荐楼 dvbhack 7小时前

读图片是IO,读HTML就不是io?原本是并发10个http请求,每个小于500k,现在变成单线程读取好几M甚至几十M。你可真是个人才

推荐楼 Showfom 6小时前

真是个人才,图片变成 base64 以后体积要增加多少哦,还不是一样废 IO

推荐楼 xinai 6小时前

图片经 base64 编码会增加硬盘占用

https://www.zhihu.com/question/31155574

推荐楼 jqbaobao 7小时前

研究研究图床技术吧

3楼 xshell 7小时前

大图用base64转出来很长吧

4楼 ApkB 7小时前

HZ的nvme应该能够满足你

5楼 buyabag 7小时前

研究研究图床技术吧

图床毕竟不可靠,不在自己控制范围里~

6楼 小旭 7小时前

别折腾那些了 直接干脆点m.2 你就算折腾了B64你还是要换硬盘
还有个办法就是CDN节点缓存 缓存之后直接从CDN节点读取 不经过服务器

7楼 huaheshang 7小时前

不合适,

8楼 大腿 7小时前

上cdn呐分流啊

9楼 buyabag 7小时前

大图用base64转出来很长吧

这倒是,不过只要可行的话,base64转出来也是一劳永逸的事,也算划算了.

12楼 Reverie 7小时前

静态不用CDN,是等爱情吗?

13楼 小夜 6小时前

我觉得还是图片分流吧,例如pic.your.com单独做图床,然后,分个五到七台机器上去。这样哪怕断一个二个,也只会对用户起最小范围的影响。

14楼 dvbhack 6小时前

buyabag 发表于 2021-10-10 13:08
大佬你这说到点子上了,我就是在考虑这个。到底是多次读取随机小文件io压力大,还是一次读取大文件压力大 ...

建议图片走CDN服务分流。现在CDN费用那么低

15楼 晴晴晴 6小时前

只能缓存。。。 没有办法

16楼 Quanyin 6小时前

静态文件上CDN啊,最差上个CF也行

17楼 给勃公子看茶 6小时前

b64并不会解决目前的问题。图片站必需上CDN。

18楼 c473432 6小时前

图片存到别的服务器上, 业务分离才是正确方法. 而不是你这种方法

19楼 临云 6小时前

不如把他存到oss或者图床里面 ,base64加密解密也浪费CPU

20楼 injy 6小时前

既然这样,不如把所有图片预先全部读到内存里面,需要的时候从内存取

22楼 Showfom 6小时前

真是个人才,图片变成 base64 以后体积要增加多少哦,还不是一样废 IO

23楼 LEB 6小时前

那你数据库好大。。。。。

24楼 周润发 6小时前

丢 静态存储不就行了 CF COS 等都有 什么都不用担心 费用比自建便宜

25楼 xinai 6小时前

图片经 base64 编码会增加硬盘占用

https://www.zhihu.com/question/31155574

26楼 专业黑人抬棺 6小时前

自建图床,图库分离

27楼 ChenYFan 6小时前

大哥,base64会增加三分之一的大小并且不可缓存,解码慢,你这硬盘能省多少。。。

28楼 acg88 6小时前

可以,之前看一个黄站就是把图换成base64

29楼 streamer 5小时前

后排出售腾讯cdn

30楼 taiyi747 5小时前

上cdn吧,图片缓存期拉高,有效减少读写

32楼 华为任正非 5小时前

上SSD或者套CDN,别无他法

33楼 马杰克 4小时前

上cdn分流比较靠谱

34楼 临云 3小时前

@Syc

废话,我当然知道浏览器本地解密,不浪费浏览器的CPU吗,图片多了大量运算,被浏览器、广告插件当成挖矿干掉了呢

35楼 Syc 27分钟前

@Syc

废话,我当然知道浏览器本地解密,不浪费浏览器的CPU吗,图片多了大量运算,被浏览器、广告插件当成 ...

浏览器确实会多占CPU,不过后面的…太好笑了,太好笑了
images base64 属于 CSSOM 渲染 , nojavascript 你能css挖矿的话建议申请专利

36楼 山本大意失仙人 23分钟前

买oss专门放图片

37楼 dragonfsky 20分钟前

没搞明白 转了不一样是占io的吗

38楼 kucn 18分钟前

他图片应该不方便用国内的CDN吧。

申明:本文内容由网友收集分享,仅供学习参考使用。如文中内容侵犯到您的利益,请在文章下方留言,本站会第一时间进行处理。

未经谷姐允许不得转载:谷姐靓号网 » 网站图片全部使用base64可行吗?-buyabag
分享到: 生成海报

热门文章

评论 抢沙发

评论前必须登录!

立即登录   注册

买Google Voice认准【谷姐靓号网】

Google Voice靓号列表Google Voice自助购买
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活