cache

package module
v0.0.0-...-c9d48d1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 31, 2017 License: MIT Imports: 0 Imported by: 6

README

Cache Store

Cache Store provide a way to cache web content to accelerate the speed of your site.

Memcached Cache Store Usage

import "github.com/qor/cache/memcached"

func main() {
  client := memcached.New(&Config{Hosts: []string{"127.0.0.1:11211"}, NameSpace: "qor_demo_v1"})

  // Save value `Hello World` with key `hello_world` into cache store
  err := client.Set("hello_world", "Hello World")

  // Get saved value with key `hello_world`
  result, err := client.Get("hello_world")

  // Save marshalled value of user into cache store
  err := client.Set("user", user)

  // Unmarshal saved value into user2
  err := client.Unmarshal("user", &user2)

  // Fetch saved value with key `hello_world`; if the key does not exist, the
  // returned result of `func` will be saved into cache store under passed key
  result, err := client.Fetch("hello_world", func() interface{} {
    return "..."
  })

  // Delete saved value
  err := client.Delete(key string)
}

Memory Cache Store Usage

import "github.com/qor/cache/memory"

func main() {
  client := memory.New()
  // Same API as memcached cache store
}

Redis Cache Store Usage

import "github.com/qor/cache/redis"

func main() {
  client = New(&redis.Options{Addr: "127.0.0.1:6379",
    Password: "",   // no password set
    DB:       0,    // use default DB
    PoolSize: 100,
  })
  // Same API as memcached cache store
}

License

Released under the MIT License.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CacheStoreInterface

type CacheStoreInterface interface {
	Get(key string) (string, error)
	Unmarshal(key string, object interface{}) error
	Set(key string, value interface{}) error
	Fetch(key string, fc func() interface{}) (string, error)
	Delete(key string) error
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL