Skip to content

A light-weight HTTP RESTful type kv in-memory database which embedded some frequently-used mid-ware.

License

Notifications You must be signed in to change notification settings

qizong007/ware-kv

Repository files navigation

ware-kv

MIT Licence experimental

It's a kv in-memory database, based on HTTP RESTful type.

Usage

Just take a look at the wiki.

Installation

You can get ware-kv by go get:

go get github.com/qizong007/ware-kv

Then it will be installed in:

$GOPATH/pkg/mod/github.com/qizong007/ware-kv@your_version

Or you can just download it in Release.

Why ware-kv?

  • Take Redis, which is the main stream open-source kv in-memory database, for standard. But ware-kv got something different:
    • Just unified HTTP RESTful interfaces, no SDK is required, out of the box!
    • Redis's basic element can only store string , but ware-kv can store
      • string
      • integer number
      • float number
      • list (except set)
      • map-dict (except set)
    • Contains some lightweight middlewares, like:
      • Message Queue (use Sub/Pub to simulate)
      • Bloom Filter
      • Distributed Lock
    • Support monitoring API, including:
      • Operation usage
      • Performance monitoring
  • Thread-safe for sure!
  • Maybe there's no database like ware-kv?
  • By the way, complete the graduation project! :)

How ware-kv?

Click here to see more.

Ideas Came From? 🧠

  • Elastic Search Style boost me...

  • Various middleware scattered in every corner...

So, I just want to build a modern lightweight No-SQL(maybe kv) database, which is integrated with common middleware and common problem solutions.

Incremental Plan? 🎯

If time permits, I'll add:(Now ware-kv is just stand-alone environment)

  • Distributed Cluster

  • Sentinel

  • Data Sharding

  • Master-Slave Replication

About

A light-weight HTTP RESTful type kv in-memory database which embedded some frequently-used mid-ware.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages