annoygaga

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

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

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