介绍与安装
Redis是一个开源的内存中的数据结构存储系统,它可以用作:数据库、缓存和消息中间件。
Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供的数据是可以达到100000+的QPS(每秒内查询次数)。它存储的value类型比较丰富,也被称为结构化的NoSql数据库。
NoSql(Not Only SQL),不仅仅是SQL,泛指 非关系型数据库 。NoSql数据库并不是要取代关系型数据库,而是关系型数据库的补充。
下载安装
windows中下载的.zip包直接解压即可
redis配置
配置文件:
- Windows:redis.windows.conf
- Linux:redis.conf
配置参数:
- daemonize:yes将redis控制为后台运行,Windows不支持
- Requirepass foobared:配置密码,默认为注释的状态
- bind:允许远程连接的客户端ip,默认为127.0.0.1,可以注释掉允许所有远程客户端连接
启动redis服务:./redis-server.exe ./redis.windows.conf
;也可以直接双击.exe文件启动
可设置参数:
- -h:指定连接的Redis服务的ip地址
- -p:指定连接的Redis服务的端口号
- -a:指定连接的Redis服务的密码
redis数据类型及其命令行操作
类型:
redis中的数据全是key-value结构,key类型都是string
value可以是:
- 字符串string:普通常用
- 哈希hash:适合存储对象
- 列表list:按照插入顺序排序,可有重复元素
- 集合set:无序集合,没有重复元素
- 有序集合sorted set/zset:每个元素关联一个分数(score),根据分数升序排序,没有重复元素
参考图片:
常用命令:
value为string
1 | SET key value |
更多命令参考Redis中文网
通用
1 | KEYS pattern |
go语言操作redis
下载依赖包
两种redis方式支持go操作
go get -u github.com/go-redis/redis
go get -u github.com/garyburd/redigo/redis
只记录第一种
启动服务和监控
双击 redis-server.exe
和 redis-cli.exe
启动服务
在客户端命令行输入命令 monitor
开启监控
开启监控后所有操作都会在客户端命令行中打印出来
go连接Redis
1 | import ( |
简单操作
Zset
- 获取zset长度
lenth, err := client.ZCard(context.Background(), key).Result()
- 根据score删除部分元素
_, err = client.ZRemRangeByRank(context.Background(), key, 0,
ZsetShrinkNum
-1).Result()
- 添加元素
1 | _, err = client.ZAdd(context.Background(), key, &redis.Z{ |
参考资料:
go语言redis方法:https://juejin.cn/post/7202521955366879288
go语言配置redis:https://blog.csdn.net/lena7/article/details/120828397