Need help with cachego?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

faabiosr
138 Stars 7 Forks MIT License 58 Commits 1 Opened issues

Description

Golang Cache component - Multiple drivers

Services available

!
?

Need anything else?

Contributors list

No Data

Cachego

Build Status Codecov branch GoDoc Go Report Card License

Simple interface for caching

Installation

Cachego requires Go 1.13 or later.

go get github.com/faabiosr/cachego

Usage

package main

import ( "log" "time"

"github.com/faabiosr/cachego/sync"

)

func main() { cache := sync.New()

if err := cache.Save("user_id", "1", 10*time.Second); err != nil {
    log.Fatal(err)
}

id, err := cache.Fetch("user_id")
if err != nil {
    log.Fatal(err)
}

log.Printf("user id: %s \n", id)

keys := cache.FetchMulti([]string{"user_id", "user_name"})

for k, v := range keys {
    log.Printf("%s: %s\n", k, v)
}

if cache.Contains("user_name") {
    cache.Delete("user_name")
}

if _, err := cache.Fetch("user_name"); err != nil {
    log.Printf("%v\n", err)
}

if err := cache.Flush(); err != nil {
    log.Fatal(err)
}

}

Supported drivers

Documentation

Read the full documentation at https://pkg.go.dev/github.com/faabiosr/cachego.

Development

Requirements

Makefile

// Clean up
$ make clean

//Run tests and generates html coverage file $ make cover

// Up the docker containers for testing $ make docker

// Format all go files $ make fmt

//Run linters $ make lint

// Run tests $ make test

License

This project is released under the MIT licence. See LICENSE for more details.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.