Go语言开发redis封装及简单使用详解
作者:秋天的春 发布时间:2024-05-08 10:53:30
标签:Go,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
来源:https://blog.csdn.net/ffzhihua/article/details/83176719
0
投稿
猜你喜欢
- 我就废话不多说了,大家还是直接看代码吧~import numpy as np kernel = np.array([1, 1, 1, 2])
- 前言PyEMD是经验模态分解 (EMD)及其变体的Python实现,EMD最流行的扩展之一是集成经验模态分解 (EEMD),它利用了噪声辅助
- 本文实例讲述了Python爬虫爬取电影票房数据及图表展示操作。分享给大家供大家参考,具体如下:爬虫电影历史票房排行榜 http://www.
- 本文主要展示了使用matplotlib设计logo的示例及完整代码,首先看下其演示结果:Python代码如下:import numpy as
- 一、在控制器中引用:use cache;二、基本方法及使用1、put() 键 值 有效时间(分钟)Cache::put('key1&
- 修改python运行路径import osos.chdir('C:/Users/86177/Desktop')os.chdi
- 永远不要相信用户输入的内容具有适当的大小或者包含适当的字符。在使用其做出决策之前应该始终对用户输入进行验证。最佳的选择是创建一个
- 第一次碰到这个问题的时候,确实不知道该怎么办,后来请教了一个大神,加上自己的理解,才了解是什么意思,这个东西写python的会经常用到,而且
- 在前面文章中,有提到过 mysqldump 备份文件中记录的时间戳数据都是以 UTC 时区为基础的,在筛选恢复单库或单表时要注意时区差别。后
- chr()函数与ord()函数解析chr()函数用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。返回
- 今天终于可以用wxPython开发GUI程序了,非常高兴。把其中的一些注意点写下来以供参考。在windows XP平台下,首先需要做以下环境
- 1、方法说明import cv2 as cvimg1 =cv.imread(filename[, flags])参数说明filename图片
- 在使用pytorch的时候,经常会涉及到两种数据格式tensor和ndarray之间的转换,这里总结一下两种格式的转换:1. tensor
- Git 创建仓库本章节我们将为大家介绍如何创建一个 Git 仓库。你可以使用一个已经存在的目录作为Git仓库。git initGit 使用
- 本文实例讲述了PHP获取当前相对于域名目录的方法。分享给大家供大家参考。具体如下:http://127.0.0.1/dev/classd/i
- 前言目前机器学习框架有两大方向,Pytorch和Tensorflow 2。对于机器学习的小白的我来说,直观的感受是Tensorflow的框架
- 而随着设备硬件配置的不断提升,对中小型应用程序来说,对算法的空间复杂度的要求也宽松了不少。不过,在当今 Web2.0 时代,对应用程序的时间
- SQL Server数据库查询速度慢的原因有很多,常见的有以下几种:1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)
- 本文实例讲述了JS实现将Asp.Net的DateTime Json类型转换为标准时间的方法。分享给大家供大家参考,具体如下:直接上例子,如下
- python 获取星期字符串程序如下#WeekNamePrintV1.pyweekStr="星期一星期二星期三星期四星期五星期六星