github.com/jtzjtz/kit@v1.0.2/conn/redis_pool/README.md (about) 1 ## Redis 连接池 2 3 #### 配置 4 5 #### 导入 6 7 ```go 8 import "github.com/jtzjtz/kit/conn/redis_pool" 9 ``` 10 11 #### 初始化 12 13 ```go 14 func main() { 15 options := &redis_pool.Options{ 16 Host: "127.0.0.1:6379", 17 PassWord: "", 18 Database: 0, 19 InitCap: 10, 20 MaxCap: 100, 21 IsWait: true, 22 IdleTimeout: 5 * time.Second, 23 DialConnectTimeout: 5 * time.Second, 24 DialReadTimeout: 5 * time.Second, 25 DialWriteTimeout: 5 * time.Second, 26 } 27 p, err := redis_pool.NewRedisPool(options) 28 29 redis := p.Get() 30 31 r, err := redis.Do("ping") 32 if err != nil { 33 log.Println("[ERROR] ping redis fail", err) 34 } 35 36 fmt.Println(r) 37 } 38 ``` 39 40 #### 依赖 41 42 - redigo:github.com/gomodule/redigo 43 44 #### 压测 45 46 Docker 环境: 47 48 - 内存 1G 49 - CPU 单核 50 51 wrk 压测工具: 52 53 - -c 跟服务器建立并保持的TCP连接数量 54 - -d 压测时间 55 - -t 使用多少个线程进行压测 56 57 58 调用 redis: 59 60 ``` 61 wrk -c100 -d30s -t4 http://127.0.0.1:8001/ 62 63 64 ``` 65