Skip to content
/ unikv Public

Simple KV memory middleware library (for Golang).

License

Notifications You must be signed in to change notification settings

apiles/unikv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8c38565 · Oct 2, 2020

History

24 Commits
Aug 31, 2020
Oct 2, 2020
Oct 2, 2020
Oct 2, 2020
Aug 30, 2020
Aug 31, 2020
Aug 30, 2020
Aug 31, 2020
Oct 1, 2020
Aug 31, 2020
Aug 30, 2020
Sep 15, 2020
Aug 31, 2020
Aug 30, 2020
Aug 31, 2020
Aug 30, 2020
Aug 31, 2020
Aug 31, 2020
Oct 2, 2020

Repository files navigation

unikv

(sub project of apiles)

Simple KV memory middleware library (for Golang).

Installation

go get github.com/apiles/unikv

Usage

First import packages:

import (
    "github.com/apiles/unikv"
    _ "github.com/apiles/unikv/drivers"
)

Note that github.com/apiles/unikv/drivers contains all the available drivers.

You can specify that with importing github.com/apiles/unikv/memory or something.

Available drivers:

name address
memory github.com/apiles/unikv/memory
redis github.com/apiles/unikv/redis

Then you need to specify an unikv.yml. An example is included in docs/unikv.yml.

Note that unikv will look it up in the current work directory. You can also specify it by setting the environment varaible UNIKV_CONFIGURE.

Then you can see this example:

func main() {
    ns := unikv.NewNamespace("hello")
    bucket, err := ns.NewBucket("new")
    defer bucket.Close()
    if err != nil {
        panic(err)
    }
    bucket.PutString("hello", "world")
    bucket.PutInt("new", 1234)
    bucket.Put("c", true)
    var c bool
    bucket.Get("c", &c)
    value, _ := bucket.GetString("hello")
    in, _ := bucket.GetInt("new")
    fmt.Println(value, in, c)
}

API Docs

Go to https://pkg.go.dev/github.com/apiles/unikv.

UniKVd

See <docs/unikvd-protocol.md>.

About

Simple KV memory middleware library (for Golang).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages