• golang操作redis


    package main
    
    import (
        "fmt"
        "redigo-master/redis"
    )
    
    func main() {
        conn, err := redis.Dial("tcp", "127.0.0.1:6379")
        if err != nil {
            fmt.Println("redis.Dial err=", err)
            return
        }
        fmt.Println("conn suc...", conn)
    
        defer conn.Close()
        // 写数据
        _, err = conn.Do("Set", "name", "allin1314")
        if err != nil {
            fmt.Println("redis.write err=", err)
            return
        }
    
        // 读数据
        data, err := redis.String(conn.Do("Get", "name"))
        if err != nil {
            fmt.Println("redis.read err=", err)
            return
        }
        fmt.Println(data)
    }

    Redis链接池

      Golang操作redis,还可以通过Redis链接池:

        1)事先初始化一定数量的链接,放入到链接池

        2)当Go需要操作Redis时,直接从Redis链接池取出链接即可

        3)这样可以节省临时获取Redis链接的时间,从而提高效率

        4)示意图

        

     代码:

    package main
    
    import (
        "fmt"
        "redigo-master/redis"
    )
    
    var pool *redis.Pool
    
    func init() {
        pool = &redis.Pool{
            MaxIdle:     8,
            MaxActive:   0,
            IdleTimeout: 100,
            Dial: func() (redis.Conn, error) {
                return redis.Dial("tcp", "localhost:6379")
            },
        }
    }
    
    func main() {
        conn := pool.Get()
        defer conn.Close()
    
        // 写数据
        _, err := conn.Do("Set", "name", "admin123")
        if err != nil {
            fmt.Println("redis.write err=", err)
            return
        }
    
        // 读数据
        data, err := redis.String(conn.Do("Get", "name"))
        if err != nil {
            fmt.Println("redis.read err=", err)
            return
        }
        fmt.Println(data)
    }
    人生就是要不断折腾
  • 相关阅读:
    python多线程
    python Queue
    PHP curl 模拟登陆
    Smarty 插件开发
    Smarty 使用继承方式实现配置
    Smarty include使用
    MongoDB初探系列之二:认识MongoDB提供的一些经常使用工具
    Ubuntu 12.10 安装JDK7
    第17期中国智能家居主题沙龙将于5月23日在京举行
    重温 Win32 API ----- 截屏指定窗体并打印
  • 原文地址:https://www.cnblogs.com/xiangxiaolin/p/12386775.html
Copyright © 2020-2023  润新知