A golang LRU Cache for high concurrency
Go to file
2013-10-21 19:37:35 +08:00
app first commit 2013-10-19 08:56:28 +08:00
bucket.go use integer counter for promotions instead of time 2013-10-21 19:37:35 +08:00
bucket_test.go clean up TestValue 2013-10-19 20:45:30 +08:00
cache.go use integer counter for promotions instead of time 2013-10-21 19:37:35 +08:00
configuration.go use integer counter for promotions instead of time 2013-10-21 19:37:35 +08:00
item.go use integer counter for promotions instead of time 2013-10-21 19:37:35 +08:00
item_test.go use integer counter for promotions instead of time 2013-10-21 19:37:35 +08:00
readme.md first commit 2013-10-19 08:56:28 +08:00

CCache

CCache is an LRU Cache, written in Go, focused on supporting high concurrency.

Lock contention on the list is reduced by:

1 - Introducing a window which limits the frequency that an item can get promoted 2 - Using a buffered channel to queue promotions for a single worker 3 - Garbage collecting within the same thread as the worker