V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gmlaogong
V2EX  ›  程序员

购买一台服务器热数据和热附件都存在服务器上,冷的都存在家里的 Homelab(家庭服务器集群)中

  •  
  •   gmlaogong · 352 天前 · 2383 次点击
    这是一个创建于 352 天前的主题,其中的信息可能已经有所发展或是发生改变。
    购买一台服务器热数据和热附件都存在服务器上,冷的都存在家里的 Homelab (家庭服务器集群)中,这种方案是否可行。
    1 、考虑这种是因为我有个图床服务,提供的是俱乐部的人使用,目前 100GB 的服务器硬盘已经满了,增加硬盘我感觉有点贵
    2 、我家里的 homelab 有 12TB 的存储,目前有 8TB 是空闲的,想利用起来,宽带上行是 100M ,感觉足够了
    3 、有没有什么现成的方案或者是开源工具实现类似于 redis 缓存一样的服务,热数据放到目前线上服务器上,冷数据在 homelab 上。冷数据可以接受访问缓慢,可以在 1 秒内返回就行。
    4 、cdn 现在不考虑添加,因为用不上,我这个服务器是 50M 的带宽,基本上就是俱乐部的人进行访问,也没太大的访问量。主要是看自己上传的图片


    感谢大家,提供附件缓存方案。谢谢大家了
    20 条回复    2023-06-12 09:42:43 +08:00
    retanoj
        1
    retanoj  
       352 天前
    Nginx ,你觉得呢?
    pota
        2
    pota  
       352 天前
    写个服务实现回源功能呢?没有的自动同步,然后再单独处理下冷数据的清理
    gmlaogong
        3
    gmlaogong  
    OP
       352 天前
    @retanoj 能具体说一下 nginx 那个功能么?您说的是代理么?代理不能实时进行热数据好像。(访问一次后就变成热数据,然后 1 天内没访问就删除的功能)
    gmlaogong
        4
    gmlaogong  
    OP
       352 天前
    @pota 这个之前我使用 php 做过,但是没有实现服务器上冷数据的清理,可是整体效率不是很高。如果有现成方案,我是想用的。
    jioswu
        5
    jioswu  
       352 天前
    这个感觉就是把服务器当成 CDN 了,没有就回 homelab 去拿,否则就走 cdn 节点返回,纯 NGINX 的话考虑做一个带缓存的反向代理么
    guowq
        6
    guowq  
       352 天前
    买个 1 年十几刀的美西 vps ,把旧数据放那边
    gmlaogong
        7
    gmlaogong  
    OP
       352 天前
    @jioswu 是的说白了,就是个 cdn ,nginx 可以实现么?
    gmlaogong
        8
    gmlaogong  
    OP
       352 天前
    @guowq 硬盘很大么?能放个连接么
    goodryb
        9
    goodryb  
       352 天前
    Nginx 是有文件缓存功能的,按照你这种用法, 图片可以全部放在 homelab 里面,搭建一个源站,服务器上使用 Nginx 做缓存即可。前置依赖是你要打通 homelab 和服务器的网络
    DAMNCRAB
        10
    DAMNCRAB  
       352 天前
    不知道这个能不能满足需求 https://goedge.cn/
    mcfog
        11
    mcfog  
       352 天前 via Android
    squid 或者 varnish
    xiaoyuesanshui
        12
    xiaoyuesanshui  
       352 天前
    我有一个相似的方案,可能不一定适合,供参考

    homelab 上的目录做一个 webdav 共享

    服务器上用 rclone mount 这个 webdav 到服务器本地。
    图片原文件移到这个 webdav 目录下

    这样其实是将数据和服务分开了,如果 homelab 的网络稳定,其实没啥问题

    我曾经试过把公司的邮箱系统这样操作过,就是慢点,然后偶尔需要重启其他都还好
    simplove
        13
    simplove  
       352 天前
    附件单独存储,像 DZ 论坛那种是支持的,单独搞个域名,在家里开个 FTP 就可以了,把附件全部迁移到家里来
    gmlaogong
        14
    gmlaogong  
    OP
       352 天前
    @simplove 不想暴露家里的地址
    Gonlandooo
        15
    Gonlandooo  
       352 天前
    9 楼思路是正确的,要不你就把云服务器纯做 CDN ,家里提供服务,如果你又想在云服务器提供服务又想用家里的做冷备,你只能自己写代码实现你的冷热分离逻辑
    flamiNNgo
        16
    flamiNNgo  
       351 天前
    nginx 支持文件缓存(没有具体用过,百度了一下,看上去应该可行)
    请求 -> 服务器 nginx -> [缓存] -> 家庭
    家庭到服务器的请求可以考虑 frp
    fangpeishi
        17
    fangpeishi  
       351 天前
    frp 或者 tailscale 打通,nginx proxy_cache ,想要的自动清理缓存指定下 inactive ,更多参数看 nginx 文档: http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache
    aru
        18
    aru  
       351 天前
    如果服务器在国内,用 @fangpeishi 提供的方案
    如果服务器在国外,推荐你花点钱上个大硬盘 vps 提供服务好了,大概一个月 5 刀以内能有 200GB 空间
    gmlaogong
        19
    gmlaogong  
    OP
       349 天前
    @flamiNNgo 我正在研究这个方案,谢谢
    gmlaogong
        20
    gmlaogong  
    OP
       349 天前
    @fangpeishi 谢谢,很有用的参考
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2511 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 08:53 · PVG 16:53 · LAX 01:53 · JFK 04:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.