如何在Linux上通过NFS加速和缓存mmap文件访问?

前端之家收集整理的这篇文章主要介绍了如何在Linux上通过NFS加速和缓存mmap文件访问?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
服务器和客户端都是64位Ubuntu 10.04 LTS.

有问题的应用程序是一个自定义应用程序,它使用mmap()进行快速随机文件访问.它的理想状态是整个文件缓存在RAM中.

网络连接真的很快10Gb以太网.它是虚拟服务器刀片设置.

网络连接不会减慢速度,因为在使用虚拟磁盘(iSCSI到SAN)时,一切都表现得非常好.但是当我们在NFS主目录挂载上运行应用程序时,性能会转移到狗身上.

似乎Linux内核没有缓存任何东西.因此,它一遍又一遍地读取mmap()访问所需的每个磁盘块.

NFS挂载是通过autofs完成的,autofs只有默认设置. / proc / mounts显示NFS安装完成时使用以下选项:

rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.11.52,mountvers=3,mountproto=tcp,addr=192.168.11.52

如何让Ubuntu 10.04缓存文件而不是一直重新加载?

解决方法

您是否已调整NFS导出或安装?您目前的装载选项有哪些?您在NFS服务器上使用哪个文件系统?

我知道你正在使用Ubuntu,但这个NFS tuning guide from Red Hat可能是一个好的开始,特别是如果你有一个很好的性能指标来测试不同的设置.本文档中的一些提示涵盖了在通过NFS访问文件和扩展属性缓存时限制元数据更改.

在这种情况下,NFS caching(FS-Cache,CacheFS)是一个选项吗?

猜你在找的Linux相关文章