some thoughts about configuring a server
Subsystems (2)
My little theory is that (NFSv3) servers should primarily cache metadata (inodes, dentries, block bitmaps) and clients should cache data and associated metadata (as far as possible) for a specific working set.
why?
1) because a server generally cannot cache all the data.
2) The subjective (perceived) performance for interactive use
at the client is largely determined by responsiveness e.g. how much time it takes before "ls -l" starts printing. Clients must see each others metadata updates very soon and that goes through the server. Caching metadata there will reduce disk seeks.
Assuming the above, the amount of server memory would become a function of either:
- the total number of inodes.
- # inodes of combined working set assuming the (server) inode
cache implements something like a LRU replacement strategy. I don't know if this is the case in the VFS, ext3 or knfsd.
And this might make sense too:
echo 0 >/proc/sys/vm/dirty_ratio # default 40 or 10 echo 0 >/proc/sys/vm/dirty_background_ratio # default 10 echo 0 >/proc/sys/vm/vfs_cache_pressure # default 100
Any opinion?
Signature · 10 lines
Frank ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ NFS maillist - [email protected] https://lists.sourceforge.net/lists/listinfo/nfs