my note for redis

redis 基础教程 https://www.runoob.com/redis/redis-sorted-sets.html

其他博文 https://blog.csdn.net/qq_42093488/article/details/82149385

 

redis特点

Redis SET  如果 key 已经存储其他值,就覆写旧值

redis类型

string在单一,list没有判存在,set不如sorted set,map 没有分页

sorted set 使用较多:(1)可以分页(2)可判是否存在,且效率高(3)加上score(可正可倒序)可以当做map用(比如用一个sorted set来存储一个用户收藏的所有文章的id和收藏时间(使用score存时间戳)),弥补map没有分页的缺憾。

map的使用场景是:比如一个用户的昵称、年龄、性别、积分等放在一个map集合中,获取时全部获取。

sorted set 常用:

//判断是否存在.Err() == nil的话就是存在
s.RedisClient.ZRank(utils.GetArticleHotCommentKey(articleID), strconv.FormatInt(commentID, 10)).Err() == nil

s.RedisClient.ZRange(utils.GetArticleHotCommentKey(articleID), int64(offset), int64(offset+limit)).Val()
s.RedisClient.ZRevRange(utils.GetArticleHotCommentKey(articleID), int64(offset), int64(offset+limit)).Val()

s.RedisClient.ZAdd(
   utils.GetUserCollectArticleCollect(userID),
   redis.Z{
      Score:  float64(time.Now().Unix()),
      Member: snStr,
   })


if intCmd := s.RedisClient.ZRem(
	utils.GetUserCollectArticleCollect(userID),
	snStr); intCmd.Val() == 0 {
	return nil
}

常用命令行

info all (介绍https://blog.csdn.net/hunhun1122/article/details/82655884

连接

redis-cli -h XX.XX.2XX.XX -p 16372 -a AXXXX

select 14

keys *-23

更新的场景

以用户头像为例,当用户更换头像时,更新redis的方式有两种:

(1)用户上传头像的时候,db和redis都写入

(2)用户上传头像的时候,只db写入,然后使用redis发布订阅机制,给消费者的redis订阅了的频道发消息,消费者redis消费消息更新自己的缓存

pipline

遍历一连串的redis集合时要用pipline,多次读优化为一次读。

db

概念,及db的规定:https://www.cnblogs.com/oxspirt/p/6529791.html

redis下,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库0。redis配置文件中下面的参数来控制数据库总数: /etc/redis/redis.conf 文件中,有个配置项 databases = 16 //默认有16个数据库。

select切换db。每个数据库都有属于自己的空间,不必担心之间的key冲突。

redis没有提供任何方法来关联标识不同的数据库。因此,需要你来跟踪什么数据存储到哪个数据库下。

因此上面的快开启200个实例的场景,可以使用不同的数据库来存储,而不必开启如此那么多的实例。

实例

redis是单进程单线程来运行的(新版支持了多线程),可以在一台系统上以多实例运行。因为redis在数据文件
大于20~30G的时候,效率会降低。所以,多实例来运行会是一个很好的方式。redis运行多实例,需要修改多个端口,多个配置文件,多个文件存储目录。例如:运行2个实例,端口分别为:6379,6380。(转自https://blog.csdn.net/freshair_x/article/details/80822980

linux下搭建、配置

https://www.cnblogs.com/tczeus/p/9042466.html

https://www.cnblogs.com/tczeus/p/9048890.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis for Windows 6.2.4 是一款适用于 Windows 操作系统的 Redis 数据库的版本。Redis 是一个开源、高性能、内存存储的数据库,常用于缓存、消息队列等场景。 Redis for Windows 6.2.4 版本是 Redis 在 Windows 平台上的一个更新版本,它包含了最新的功能和修复了之前版本中的一些 bug。通过在 Windows 上运行 Redis,开发人员可以更方便地在 Windows 环境中使用 Redis,并能充分利用 Windows 的特性和优势。 Redis for Windows 6.2.4 版本的特点包括: 1. 支持最新的 Redis 功能:包括字符串、列表、哈希、集合、有序集合等数据结构,以及事务、发布订阅、Lua 脚本等功能。 2. 提供了 Windows 平台的兼容性:在 Windows 上运行的 Redis 与 Linux 版本的 Redis 具有相同的命令和接口,因此在迁移或开发时无需修改代码。 3. 支持 Windows 的特性:Redis for Windows 6.2.4 可以充分利用 Windows 的异步网络库和 I/O 模型,提供更高的性能和稳定性。 4. 更新和 bug 修复:Redis for Windows 6.2.4 版本修复了之前版本中的一些 bug,并引入了一些新的特性和改进,提升了整体的性能和稳定性。 总之,Redis for Windows 6.2.4 版本是一个适用于 Windows 平台的 Redis 数据库版本,它提供了最新的功能和修复了之前版本中的一些问题。使用 Redis for Windows 6.2.4,开发人员可以在 Windows 环境中更方便地使用 Redis,并享受到其高性能和稳定性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值