V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
annoygaga

不用 CDN,希望服务器能 LRU 的 cache 住文件,怎么搞比较好?(k8s 内)

  •  1
     
  •   annoygaga · Oct 16, 2024 · 2797 views
    This topic created in 560 days ago, the information mentioned may be changed or developed.

    暂时有一个需求,就是需要 serve 文件,同时希望对于文件做一个 cache ,在 k8s 上,由于一些个别原因用不了 CDN (或者说实际需求比描述的更复杂,CDN 不好上)

    现在能想到的就是做一个 LRU cache 服务,cache 到 mem 和本地硬盘,再拿一个文件对象服务做更深度的存储(比如 s3 ,minio )去回源

    类似这种需求还有什么更好的办法吗?

    PS: 文件非常多,非常杂,大小在 10kb - 3MB 左右,但是请求存在 2/8 定律

    18 replies    2024-10-17 15:32:12 +08:00
    3IOhG7M0knRu5UlC
        1
    3IOhG7M0knRu5UlC  
       Oct 16, 2024 via Android
    你可以做一个节点的 cdn
    pagxir
        2
    pagxir  
       Oct 16, 2024 via Android
    fuse+nfs+cachefilesd 自带缓存+回源,但是是不是 lru 就不清楚了
    qiusu88
        3
    qiusu88  
       Oct 16, 2024
    很好奇不能上 CDN 的原因
    annoygaga
        5
    annoygaga  
    OP
       Oct 16, 2024
    @GooMS 咋搞呢?没怎么搞过
    annoygaga
        6
    annoygaga  
    OP
       Oct 16, 2024
    @pagxir 这个是不是本地文件 cache 也行?
    annoygaga
        7
    annoygaga  
    OP
       Oct 16, 2024
    @qiusu88 因为业务复杂度,目前没看到合适的 CDN 提供商
    annoygaga
        8
    annoygaga  
    OP
       Oct 16, 2024
    @importmeta cache 量比这个大,得借助磁盘的那种,有很多媒体文件(当然都是小文件)
    zu1y
        9
    zu1y  
       Oct 17, 2024
    直接塞 Redis 里算了。你这每个实例都 cache 相同的数据,加起来的资源消耗肯定比 Redis 更大了
    annoygaga
        10
    annoygaga  
    OP
       Oct 17, 2024
    @zu1y 目前是想塞 redis ,但可能所有文件都比 redis 内存大,所以还需要一个存对象的方案,现在想找一个便宜同时快速的对象方案
    mytsing520
        11
    mytsing520  
    PRO
       Oct 17, 2024
    自建 CDN
    billzhuang
        12
    billzhuang  
       Oct 17, 2024
    如果没有找到合适的 CDN 厂商,大概率是自己实现错了。
    joyypjh
        13
    joyypjh  
       Oct 17, 2024
    nginx 简单的 proxy_cache 不能满足需求吗
    birdhk
        14
    birdhk  
       Oct 17, 2024
    fluid 呢,缓存文件提供 pvc 挂载
    R4rvZ6agNVWr56V0
        15
    R4rvZ6agNVWr56V0  
       Oct 17, 2024
    13 楼提及的。 不行吗?

    annoygaga
        16
    annoygaga  
    OP
       Oct 17, 2024
    @billzhuang 讲白了就是自由度很高,接了 CDN 也需要搞不少事情。。。,而且回源速度也是问题
    annoygaga
        17
    annoygaga  
    OP
       Oct 17, 2024
    @birdhk 感觉靠谱
    annoygaga
        18
    annoygaga  
    OP
       Oct 17, 2024
    @GeekGao 是可以的,但是现在的问题在于需要缓冲的文件太多了,希望尽可能的扩大缓存的量(其实就很像 CDN 了)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4223 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 73ms · UTC 09:59 · PVG 17:59 · LAX 02:59 · JFK 05:59
    ♥ Do have faith in what you're doing.