Kache

command module
v0.0.0-...-e044eaa Latest Latest
Warning

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

Go to latest
Published: Aug 25, 2023 License: MIT Imports: 5 Imported by: 0

README

Kache

Yet another distributed caching system.

Kache is a distributed caching system developed for learning purpose only. The general idea comes from GeeCache and GroupCache (even the readme architecture comes from it). Some of the features are inspired by PeanutCache and gcache.

Comparing to GeeCache

Like GeeCache, Kache:
  • shard data by consistent hashing
Unlike GeeCache, Kache:
  • use gRPC instead of HTTP as the communication protocol
  • support more caching strategies like lfu, fifo ...
  • support service discovery and registration by etcd
  • support lazy key deletion

TODO List

  • support data persistence

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
cache
Package cache provides cache strategy support of the kv system, currently we have fifo, lru (default), lfu ...
Package cache provides cache strategy support of the kv system, currently we have fifo, lru (default), lfu ...
config
package config provides a global Config object
package config provides a global Config object
consistenthash
package consistenthash allows nodes in the cluster to fetch cache from other nodes.
package consistenthash allows nodes in the cluster to fetch cache from other nodes.
proto
package proto stores RPC settings in this project
package proto stores RPC settings in this project
registry
package registry provides service discovery and registration with etcd
package registry provides service discovery and registration with etcd

Jump to

Keyboard shortcuts

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