Class RrdSafeFileBackend

  • All Implemented Interfaces:
    RrdFileBackend

    public class RrdSafeFileBackend
    extends RrdRandomAccessFileBackend
    Backend which is used to store RRD data to ordinary files on the disk, using locking. This backend is SAFE: it locks the underlying RRD file during update/fetch operations, and caches only static parts of a RRD file in memory. Therefore, this backend is safe to be used when RRD files should be shared between several JVMs at the same time. However, this backend is a little bit slow since it does not use fast java.nio.* package (it's still based on the RandomAccessFile class).
    • Constructor Detail

      • RrdSafeFileBackend

        public RrdSafeFileBackend​(String path,
                                  long lockWaitTime,
                                  long lockRetryPeriod)
                           throws IOException
        Creates RrdFileBackend object for the given file path, backed by RandomAccessFile object.
        Parameters:
        path - Path to a file
        lockWaitTime - lock waiting time in milliseconds.
        lockRetryPeriod - lock retry period in milliseconds.
        Throws:
        IOException - Thrown in case of I/O error.