先说探索的结论:我找到了目标软件,但运维由于该方案无人背书且目前一切运转正常(至少目前看起来还能苟),所以方案封存。
下面说说探索的背景吧:我们有一个庞大的图库,很多子系统会在中心节点写入图库(上传图片或文件),然后子节点通过rsync定时拉取中心节点图库数据。
这样的运作方式呢,最初是不会碰到什么问题的。但当数据足够多的时候,对内网带宽的消耗很高,甚至rsync本身也会变成高负载的程序。那么问题来了,有没有一个优雅方案?让图库只需要建立在一个地方,其他直接调用即可。常玩儿的人肯定会吐口而出,你是要自建OSS(对象存储服务(Object Storage Service))吧。
恩,其实初衷是的。但还有额外的需求,最好可以相同的图片只上传一次,并且,如果可以的话,最好能实现长时间无访问文件的归档功能。
业内的开源方案通常为:MinIO & Ceph。
经过调研,选择了MinIO。而相同图片只上传一次的功能实现,使用了s3git。至于无访问文件的归档功能,这个实现起来很复杂,暂且作罢。
至此,初始方案就到这里,考虑到方案封存,所以也就留档在这里记录个探索的思路。
说起来啊,研发负责架构设计以及运维方案,就安慰自己,能力越大责任越大吧,多学多见识一些总没有坏处的。
参考资料
MinIO & Ceph 对比链接:Minio VS Ceph
MinIO 参考资料: MinIO对象存储介绍
Ceph 参考资料:ceph简介
如您从本文得到了有价值的信息或帮助,请考虑扫描文末二维码捐赠和鼓励。
如本文对您有用,捐赠和留言 将是对我最好的支持~(捐赠可转为站内积分)
如愿意,请向朋友推荐本站,谢谢。
尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。