Nexus serves files off disk - as such optimizing disk I/O is an important administrative task on heavily loaded systems.
Sonatype offers general advice based on our experience with heavily loaded Nexus instances. Ultimately any optimizations should be at the discretion of your operations personnel.
Avoid Recording File Access Times On Reads
When mounting the nexus work location configure the mount to not write file access times when files are read off disk.
On Unix systems consult the manuals for /etc/fstab and the mount command.
The use of
relatimecan impact drive performance.
atimeoption updates the atime of the files every time they are accessed. This is more purposeful when Linux is used for servers; it does not have much value for desktop use. The drawback about the
atimeoption is that even reading a file from the page cache (reading from memory instead of the drive) will still result in a write!
- Using the
noatimeoption fully disables writing file access times to the drive every time you read a file. This works well for almost all applications, except for a rare few like Mutt that needs such information. For mutt, you should only use the
nodiratimeoption disables the writing of file access times only for directories while other files still get access times written.
nodiratime. You do not need to specify both.
relatimeenables the writing of file access times only when the file is being modified (unlike
noatimewhere the file access time will never be changed and will be older than the modification time). The best compromise might be the use this option since programs like Mutt will continue to work, but you will still have a performance boost as the files will not get access times updated unless they are modified. This option is used when the
defaultskeyword option or no options at all are specified in fstab for a given mount point.
NTFS file systems have a similar option using fsutil:
fsutil behavior set disablelastaccess 1
Contact your Windows Administrator and refer to these articles:
Avoid Using NFS
NFS can be slow if not configured correctly and commonly does not keep up with the demands of busy I/O. It is not a good solution for high performance IO that Nexus needs on it's work directory. For highest performance, use a SAN.