Skip to content

Repository files navigation

cache-loader

Releasego.dev referenceGocodecov

Golang Cache Loader

Feature

  • Thread safe
  • Fetch once even when concurrent process request same key.
  • stale-while-revalidate when item is expired

Example

funcmain() {
itemLoader:=loader.NewLRU(fetchItem, 5*time.Minute, 1000)
item, err:=loader.Get("key")
// use item
}
funcfetchItem(keyinterface{}) (interface{}, error) {
res, err:=http.Get("https://example.com/item/"+key)
iferr!=nil {
returnnil, err
}
returnprocessResponse(res)
}

About

Golang Cache Loader

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages