LRU (Least Recently Used) - вытеснение наименее недавно использованных при переполнении. В Go: hashmap + двусвязный список по времени доступа или готовые реализации (hashicorp/golang-lru, karlseguin/ccache). Задают максимальный размер; при добавлении сверх лимита удаляют самый старый элемент. Подходит для ограниченного in-memory кеша.
lru, _ := lru.New(1000)
lru.Add("key", value)
if v, ok := lru.Get("key"); ok { ... }