在多站点环境中进行透明的数据caching

我需要为我的问题select正确的技术。 我有一个主站点和一些远程站点在地理上分布的多站点环境。

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

所以看起来很合理,就像在每个站点上cachingNFS代理那样

  • 只有第一次访问共享文件的速度很慢
  • 随后的访问速度要快得多,因为caching命中率预计会非常高

我能够使用FSCache,cachefilesd和“-o fsc”挂载NFS共享,在linux机器上configuration类似的caching,并取得了非常好的效果。 然而,当我试图configurationNFS服务器,将启用本地caching共享,然后重新导出它,我碰到一些问题。 快速谷歌search显示,NFS不是为这种用例devise的。

我想知道这个问题是否有更好的技术。 我对一些开放源代码的纯软件解决scheme很感兴趣(理想的是在NFS上工作,因为在这个设置中很难摆脱主要的NFS共享)。 任何build议,高度赞赏。