poornas
a3e806ed61
|
7 years ago | |
---|---|---|
.. | ||
README.md | 7 years ago |
README.md
Disk based caching
Disk caching can be turned on by updating the "cache" config
settings for minio server. By default, this is at ${HOME}/.minio
.
"cache" takes the drives location, duration to expiry (in days) and any wildcard patterns to exclude certain content from cache as configuration settings.
"cache": {
"drives": ["/path/drive1", "/path/drive2", "/path/drive3"],
"expiry": 30,
"exclude": ["*.png","bucket1/a/b","bucket2/*"]
},
The cache settings can also be set by the environment variables below. When set, environment variables override any cache settings in config.json
export MINIO_CACHE_DRIVES="/drive1;/drive2;/drive3"
export MINIO_CACHE_EXPIRY=90
export MINIO_CACHE_EXCLUDE="pattern1;pattern2;pattern3"
-
Cache size is 80% of drive capacity. Disk caching requires Atime support to be enabled on the cache drive.
-
Expiration of entries takes user provided expiry as a hint, and defaults to 90 days if not provided.
-
Garbage collection sweep of the expired entries happens whenever disk usage is > 80% of drive capacity until sufficient disk space has been freed.
-
Object is cached only when drive has sufficient disk space for 100 times the size of current object
Behavior
Disk caching happens on both GET and PUT operations.
-
GET caches new objects for entries not found in cache. Otherwise serves from the cache.
-
PUT/POST caches all successfully uploaded objects. Replaces existing cached entry for the same object if needed.
When an object is deleted, it is automatically cleared from the cache.
NOTE: Expiration happens automatically based on the configured interval as explained above, frequently accessed objects stay alive in cache for a significantly longer time on every cache hit.
The following caveats apply for offline mode
- GET, LIST and HEAD operations will be served from the disk cache.
- PUT operations are disallowed when gateway backend is offline.
- Anonymous operations are not implemented as of now.