多站点环境中的透明数据缓存

多站点环境中的透明数据缓存

我需要有关选择适合我的问题的技术的建议。我有一个地理分散的多站点环境,其中有一个主站点和多个远程站点。

  • 主站点每天生成数 TB 的数据(每天约有 30% 的数据完全重新生成)
  • 将所有数据复制到远程站点是不切实际的
  • 数据当前通过 NFS 共享,远程站点访问共享的速度非常慢
  • 远程站点上的用户通常只使用共享上的一小部分数据(几千兆字节)
  • 远程站点的用户倾向于在白天使用相同的数据
  • 访问权限严格为只读

因此,在每个网站上使用类似缓存 NFS 代理的东西看起来非常合理,这样

  • 只有第一次访问共享上的文件时速度较慢
  • 由于预期缓存命中率会非常高,因此后续访问速度会快得多

我能够使用 FSCache、cachefilesd 和使用“-o fsc”挂载 NFS 共享在 Linux 机器上配置类似的缓存,并获得了非常好的结果。但是,当我尝试配置 NFS 服务器以挂载启用本地缓存的共享,然后重新导出它时,我遇到了一些问题。快速谷歌搜索显示 NFS 不是为此类用例设计的。

我想知道是否有更好的技术可以解决这个特定问题。我对一些开源纯软件解决方案感兴趣(最好在 NFS 之上工作,因为在这个设置中很难摆脱主 NFS 共享)。任何建议都非常感谢。

相关内容