高可靠度、低成本的 ipfs、oss(b2、s3)混合图床 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
img2ipfs
V2EX    IPFS

高可靠度、低成本的 ipfs、oss(b2、s3)混合图床

  •  
  •   img2ipfs 2024-09-09 18:53:10 +08:00 2824 次点击
    这是一个创建于 395 天前的主题,其中的信息可能已经有所发展或是发生改变。

    ipfs 图床的运行成本很低,但是有一个问题,如果图片一年都没有人浏览,可能会丢失。

    付费 s3 这种存储只要你付费图片一直就在,但是流量成本很高。

    我们可以把这两个结合一下,图片先上传到 ipfs ,然后拿到 ipfs 的图片哈希,然后根据这个哈希保存到 b2 。

    访问图片的时候优先走 ipfs ,如果 ipfs 找不到,那就走 b2 ,并且同时再上传一次到 ipfs 。同一个文件在 ipfs 链接是一致的,重复上传后,老链接就可以恢复访问。

    另外有几十个公共的 ipfs 网关,每次图片可以随机调用一个网关,这个网关就会保存一份这个图片,等于你的图片复制到几十个网关的缓存里面。

    5 条回复
    NewYear
        1
    NewYear  
       2024-09-09 23:59:39 +08:00
    https://cdn.ipfsscan.io/

    这个就是成品啊,用 IPFS ,然后图片外链是第三方的 IPFS 网关。
    NewYear
        2
    NewYear  
       2024-09-10 00:04:59 +08:00
    图床很少有大家都会存储并共享的,所以楼主的思路意义不大(当然也不排除楼主有自己的需求)。

    我自己也有过一些考虑,用来做网盘,备份很多软件安装包,,,,我期望的是可以查询 IPFS 网络中有多少人存储这个文件,如果人少的话,我存储该文件,,,,,如果很多人存储,那我不存储这个文件,用的时候直接下载就行。。。。。这样既备份了又能随时下载。

    如果大量都是独有的文件,就没办法依靠别人,只能依靠自己的存储多一些(包括网盘存储)。
    Livid
        3
    Livid  
    MOD
    PRO
       2024-09-10 14:50:31 +08:00
    「如果 ipfs 找不到」

    这步可能会是一个几十秒的 timeout ,用户体验不太好。
    img2ipfs
        4
    img2ipfs  
    OP
       2024-09-10 17:24:01 +08:00
    @Livid #3 可以记录上次访问时间,如果在多少时间内访问过的,就跳转 ipfs ,如果没有就补充源,跳云存储,更新访问时间。
    img2ipfs
        5
    img2ipfs  
    OP
       2024-09-10 17:24:58 +08:00
    @NewYear #2 主要作用就是老图补源,如果一个老图 1-2 年没有人访问,这个时候找一个网站上传上去,老的链接就有资源了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2825 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 13:35 PVG 21:35 LAX 06:35 JFK 09:35
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86