Go 实现 Redis 服务协议的开发包:Go-redis-server

e2ex 9年前

Go-redis-server 是使用 Go 实现 Redis 服务协议的开发包。

有许多客户端能够实现 redis 协议,但很多服务器不能实现。

go-redis-server 不仅能通过 redis 协议,帮助构建服务器软件;还能够作为 redis 实现的候选者,能够只从 redis,甚至在后端“伪装”执行 redis 数据库的 API。

简单代码示例:

package main     import (      redis "github.com/dotcloud/go-redis-server"  )     type MyHandler struct {      values map[string][]byte  }     func (h *MyHandler) GET(key string) ([]byte, error) {      v := h.values[key]      return v, nil  }     func (h *MyHandler) SET(key string, value []byte) error {      h.values[key] = value      return nil  }     func main() {      handler, _ := redis.NewAutoHandler(&MyHandler{values: make(map[string][]byte)})      server := &redis.Server{Handler: handler, Addr: ":6389"}      server.ListenAndServe()  }

项目主页:http://www.open-open.com/lib/view/home/1431590886576