minio/cmd/gateway/s3
poornas 224b4f13b8
Add cache eviction low and high watermarks (#8958)
To allow better control the cache eviction process.

Introduce MINIO_CACHE_WATERMARK_LOW and 
MINIO_CACHE_WATERMARK_HIGH env. variables to specify 
when to stop/start cache eviction process. 

Deprecate MINIO_CACHE_EXPIRY environment variable. Cache 
gc sweeps at 30 minute intervals whenever high watermark is
reached to clear least recently accessed entries in the cache
until sufficient space is cleared to reach the low watermark.

Garbage collection uses an adaptive file scoring approach based
on last access time, with greater weights assigned to larger
objects and those with more hits to find the candidates for eviction.

Thanks to @klauspost for this file scoring algorithm

Co-authored-by: Klaus Post <klauspost@minio.io>
2020-02-23 19:03:39 +05:30
..
gateway-s3-metadata.go Avoid using fastjson parser pool, move back to jsoniter (#8190) 2019-09-06 04:21:27 +05:30
gateway-s3-metadata_test.go Avoid using jsoniter, move to fastjson (#8063) 2019-08-19 08:35:52 -10:00
gateway-s3-sse.go Use const slashSeparator instead of "/" everywhere (#8028) 2019-08-06 12:08:58 -07:00
gateway-s3-utils.go Replace Minio refs in docs with MinIO and links (#7494) 2019-04-09 11:39:42 -07:00
gateway-s3.go Add cache eviction low and high watermarks (#8958) 2020-02-23 19:03:39 +05:30
gateway-s3_test.go Update go mod with sem versions of our libraries (#7687) 2019-05-29 16:35:12 -07:00