You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
2.0 KiB
55 lines
2.0 KiB
7 years ago
|
## 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.
|