beego 和 redis
beego 自带 cache :
github.com/beego/beego/v2/client/cache
github.com/beego/beego/v2/client/cache/redis
最大的坑:
// associate with config key. func (rc *Cache) associate(originKey interface{}) string { return fmt.Sprintf("%s:%s", rc.key, originKey) }
if _, ok := cf["key"]; !ok { cf["key"] = DefaultKey }
必须是 有一个前缀的key, 比如key为abc 你操作的可以 key,变成 abc:key 如果这个rediskey 空,就是 :key 前面有 : 结果就是和已有项目无法兼容!!!!!
所以最好用
"github.com/go-redis/redis"
func (o *ObjectController) Testredis() { redisdb := redis.NewClient(&redis.Options{ Addr: "127.0.0.1:6379", // use default Addr Password: "xxxx", // no password set DB: 0, // use default DB }) _, err := redisdb.Ping().Result() if err != nil { o.error(err.Error()) } val, err := redisdb.HGet("clients","984969").Result() if err != nil { o.error(err.Error()) } var data interface{} json.Unmarshal([]byte(val), &data) ret:=make(map[string]interface{}) ret["success"]=1 ret["data"]=data o.Data["json"] = ret o.ServeJSON() }
版权声明本文仅代表作者观点,不代表本站立场。本文系作者授权发表,未经许可,不得转载。图文来源网络,侵权删!