图片与图片工具
李二花 / 2023-07-27
在写博客的时候,经常会面临处理图片的事情,目前让我很困扰的点在于此:
- 我的网站前置走的是 cloudflare 会有缓存,但是国内访问不是太快
- 我用的文件存储是阿里云的 OSS
- 每个月的免费出网流量是 5G
- 用的是港区的 OSS,因为主要是中文博客,访问还在是国内,香港访问速度会快
- 没用国区是因为国区无法配置域名,如果要配置需要备案,我不想备案
- 走国内 CDN 加速的话,需要配置域名并备案(我不想
- 因为外网访问量没有那么大,因此直接用 cloudflare 做 CDN 是 OK 的
- 之前碰到过图床跑路的情况,因此只考虑自建的服务
- 自建图床就涉及到流量的问题,gitee 这种国内的不敢用,github 内网访问慢,OSS 和 COS 就是一个选择
- 但是 OSS 和 COS 的免费出网流量每个月就 5G,如果碰到恶意刷量的情况,很容易被刷很多钱
- 目前我不是直接上传图片到图床,而是放到 asset 目录下,然后 markdown 直接相对引用
- 缺点是需要把图片都放到 asset 下增加了 git 仓库的大小
- 优点是不怕图床跑路导致的图片的丢失
- 图片的压缩就是我需要考虑的一个很重要的问题,要让图片不能太大增加 git 负担
- 如果能解决上面的图床的问题,我是可以考虑直接把图片压缩后上传到图床,引用图床的地址的
- 毕竟一个 URL 的维护成本和 git 管理成本比一个图片的要小很多
- 再一个就是压缩,之前的图片的量少,可以选择手动压缩,但是现在图片的量大
- 是否需要使用图片的缩略图 magick 工具可以处理
- ffmpeg 可以对图片进行压缩处理
方案选择:
- 使用批量的图片压缩,然后继续沿用原来的那种模式把图片放到 asset 目录下相对引用一下
- 批量压缩后,使用命令行工具自动上传图床,并返回对应的图床地址, 使用图床的网络地址(然后增加一个 github 的地址做备份)
- 批量压缩,同步图床,原始图片放到其他地方备份
再增加一个 photoprism 的服务,把一些压缩过的,需要记录的图片都做成线上服务
后续:
- 是否考虑 OSS 地区放到外区