public interface StorageHousekeepingController
| Modifier and Type | Interface and Description |
|---|---|
static class |
StorageHousekeepingController.Default |
static interface |
StorageHousekeepingController.Defaults |
static interface |
StorageHousekeepingController.Validation |
| Modifier and Type | Method and Description |
|---|---|
long |
fileCheckTimeBudgetNs() |
long |
garbageCollectionTimeBudgetNs() |
long |
housekeepingIntervalMs() |
long |
housekeepingTimeBudgetNs() |
long |
liveCheckTimeBudgetNs() |
static StorageHousekeepingController |
New()
Pseudo-constructor method to create a new
StorageHousekeepingController instance
using default values defined by StorageHousekeepingController.Defaults. |
static StorageHousekeepingController |
New(long housekeepingIntervalMs,
long housekeepingTimeBudgetNs)
Pseudo-constructor method to create a new
StorageHousekeepingController instance
using the passed values. |
long housekeepingIntervalMs()
long housekeepingTimeBudgetNs()
long garbageCollectionTimeBudgetNs()
long liveCheckTimeBudgetNs()
long fileCheckTimeBudgetNs()
static StorageHousekeepingController New()
StorageHousekeepingController instance
using default values defined by StorageHousekeepingController.Defaults.StorageHousekeepingController instance.New(long, long),
Storage.HousekeepingController(),
StorageHousekeepingController.Defaultsstatic StorageHousekeepingController New(long housekeepingIntervalMs, long housekeepingTimeBudgetNs)
StorageHousekeepingController instance
using the passed values.
The combination of these two values can be used to define how much percentage of the system's computing power
shall be used for storage housekeeping.
Example:
10 Million ns (= 10 ms) housekeeping budget every 1000 ms
means (roughly) 1% of the computing power will be used for storage housekeeping.
Note that in an application where no store occures over a longer period of time, all housekeeping tasks
will eventually be completed, reducing the required computing power to 0. When the next store occurs, the
housekeeping starts anew.
How long the housekeeping requires to complete depends on the computing power it is granted by the
StorageHousekeepingController, other configurations (like entity data cache timeouts)
and the amount of data that has to be managed.
See all "issue~" methods in StorageConnection for a way to call housekeeping actions explicitly
and causing them to be executed completely.
housekeepingIntervalMs - the interval in milliseconds that the storage threads shall
execute their various housekeeping actions (like cache clearing checks, file consolidation, etc.).
Must be greater than zero.housekeepingTimeBudgetNs - the time budget in nanoseconds that each storage thread will use to perform
a housekeeping action. This is a best effort value, not a strictly reliable border value. This means
a housekeeping action can occasionally take slightly longer than specified here.
Must be greater than zero.StorageHousekeepingController instance.New(),
Storage.HousekeepingController(long, long)Copyright © 2022 MicroStream Software. All rights reserved.