目录
  • go redis 集合操作–sadd
    • 安装redigo
    • 带密码的redis操作
    • 批量添加
    • 无密码redis操作
    • redis封装包
  • 参考

    go redis 集合操作–sadd

    redis的go语言包,我们使用官方推荐的redigo,https://github.com/garyburd/redigo

    安装redigo

    $ go get github.com/garyburd/redigo

    带密码的redis操作

    package main
    import (
        "log" 
        "github.com/garyburd/redigo/redis"
    ) 
    func main() {
         server := "127.0.0.1:6379"
         option := redis.DialPassword("123456")
        c, err := redis.Dial("tcp", server, option)
        if err != nil {
            log.Println("connect server failed:", err)
            return
        } 
        defer c.Close() 
        v, err := redis.Int64(c.Do("SADD", "myset", "10.8.37.98"))
        if err != nil {
            log.Println("SADD failed:", err)
            return
        } 
        log.Println("value:", v)
     
    }

    批量添加

    package main
    import (
        "log"
     
        "github.com/garyburd/redigo/redis"
    )
    func main() {
        server := "127.0.0.1:6379"
        option := redis.DialPassword("123456")
        c, err := redis.Dial("tcp", server, option)
        if err != nil {
            log.Println("connect server failed:", err)
            return
        } 
        defer c.Close() 
        setKey := "myset"
        args := []interface{}{setKey}
        args = append(args, "10.1")
        args = append(args, "10.2")
        v, err := redis.Int64(c.Do("SADD", args...))
        if err != nil {
            log.Println("SADD failed:", err)
            return
        } 
        log.Println("value:", v)
     
    }

    无密码redis操作

    package main
    import (
    	"fmt"
    	"github.com/gomodule/redigo/redis"
    )
    func main() {
    	c, err := redis.Dial("tcp", "127.0.0.1:6379")
    	if err != nil {
    		fmt.Println(err)
    		return
    	}
    	defer c.Close() 
    	c.Do("SET", "hello", "world")
    	s, err := redis.String(c.Do("GET", "hello"))
     

    redis封装包

    package redis
    import (
    	"autumn/tools/cfg"
    	"fmt"
    	"github.com/gomodule/redigo/redis"
    	"log"
    ) 
    var REDIS redis.Conn
    func InitRedis() {
    	REDIS = redis_connect("default")
    }
    func CloseRedis() {
    	REDIS.Close()
    } 
    func redis_connect(project string) redis.Conn {
     	server := fmt.Sprintf("%s:%s",
    		cfg.Get("redis", project+".host").String(),
    		cfg.Get("redis", project+".port").String())
    	var err error
    	option := redis.DialPassword(cfg.Get("redis", project+".passwd").String())
    	c, err := redis.Dial("tcp", server, option)
    	if err != nil {
    		log.Fatal("[GIN-MYSQL(" + project + ")] connect to redis error:" + err.Error())
    	} 
    	log.Println("[GIN-Redis(" + project + ")] connected success") 
    	return c
    }

    参考

    redigo
    https://github.com/garyburd/redigo

    redigo API Reference
    https://godoc.org/github.com/gomodule/redigo/redis

    以上就是Go语言开发redis封装及简单使用详解的详细内容,更多关于Go语言开发redis封装及使用的资料请关注其它相关文章!

    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。