redis操作
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
2.4 KiB

package redis
import (
redisdb "github.com/gomodule/redigo/redis"
)
// 定义redis链接池
var pool *redisdb.Pool
// 初始化redis链接池
func init() {
pool = &redisdb.Pool{
MaxIdle: 500, /*最大的空闲连接数*/
MaxActive: 10000, /*最大的激活连接数*/
Dial: conn,
}
}
func conn() (redisdb.Conn, error) {
c, err := redisdb.Dial("tcp", "127.0.0.1:6379")
if err != nil {
return nil, err
}
return c, nil
}
// // 向key的hash中添加元素field的值
// func HashSet(key, field string, data interface{}) {
// err := client.HSet(key, field, data)
// if err != nil {
// logger.Error("Redis HSet Error:", err)
// }
// }
// // 批量向key的hash添加对应元素field的值
// func BatchHashSet(key string, fields map[string]interface{}) string {
// val, err := client.HMSet(key, fields).Result()
// if err != nil {
// logger.Error("Redis HMSet Error:", err)
// }
// return val
// }
// // 通过key获取hash的元素值
// func HashGet(key, field string) string {
// result := ""
// val, err := client.HGet(key, field).Result()
// if err == redis.Nil {
// logger.Debug("Key Doesn't Exists:", field)
// return result
// } else if err != nil {
// logger.Error("Redis HGet Error:", err)
// return result
// }
// return val
// }
// // 批量获取key的hash中对应多元素值
// func BatchHashGet(key string, fields ...string) map[string]interface{} {
// resMap := make(map[string]interface{})
// for _, field := range fields {
// var result interface{}
// val, err := client.HGet(key, fmt.Sprintf("%s", field)).Result()
// if err == redis.Nil {
// logger.Debug("Key Doesn't Exists:", field)
// resMap[field] = result
// } else if err != nil {
// logger.Error("Redis HMGet Error:", err)
// resMap[field] = result
// }
// if val != "" {
// resMap[field] = val
// } else {
// resMap[field] = result
// }
// }
// return resMap
// }
// // 获取自增唯一ID
// func Incr(key string) int {
// val, err := client.Incr(key).Result()
// if err != nil {
// logger.Error("Redis Incr Error:", err)
// }
// return int(val)
// }
// // 添加集合数据
// func SetAdd(key, val string) {
// client.SAdd(key, val)
// }
// // 从集合中获取数据
// func SetGet(key string) []string {
// val, err := client.SMembers(key).Result()
// if err != nil {
// logger.Error("Redis SMembers Error:", err)
// }
// return val
// }