加入收藏 | 设为首页 | 会员中心 | 我要投稿 孝感站长网 (https://www.0712zz.com.cn/)- 运营、云管理、管理运维、云计算、大数据!
当前位置: 首页 > 站长资讯 > 传媒 > 正文

Redis你掌握多少了

发布时间:2021-02-22 17:01:05 所属栏目:传媒 来源:互联网
导读:中使用的是 渐进式rehash 。 在 rehash 的时候会保留新旧两个 hash 字典,在数据迁移的时候会将旧字典中的内容一点一点迁移到新字典中,查询的同时会查询两个 hash 字典,等数据全部迁移完成才会将新字典代替就字典。 下面我们来看一下关于 hash 的基本操作

中使用的是 渐进式rehash 。

在 rehash 的时候会保留新旧两个 hash 字典,在数据迁移的时候会将旧字典中的内容一点一点迁移到新字典中,查询的同时会查询两个 hash 字典,等数据全部迁移完成才会将新字典代替就字典。

下面我们来看一下关于 hash 的基本操作。

  •  hset key field value 设置字典中某个key的值
  •  hsetnx key field value 设置字典中某个key的值(不存在的)
  •  hmset key field1 value1 field2 value2 … 批量设置
  •  hget key field 获取字典中某个key的值
  •  hmget key field1 field2 批量获取
  •  hgetall key 获取全部   

  • linsert key before|after item newitem 在指定元素的前面或者后面添加新元素
  • lrem key count value 删除指定个数值为value的元素
    •   count = 0 :删除所有值为value的元素
    •   count > 0 :从左到右删除 count 个值为 value 的元素
    •   count < 0 :从右到做删除 |count| 个值为 value 的元素
  •  ltrim key start end 保留指定范围的元素
  •  lset key index newValue 更新某个索引的值

set 中是使用 跳表 来实现的,我们知道只有数组这种连续的空间才能使用二分查找进行快速的定位,而链表是不可以的。跳表帮助链表查找的时候节省了很多时间(使用跳的方式来遍历索引来进行有序插入),如果不了解跳表的同学可以补习一下。


Redis 中的事务和管道

管道 Pipeline

在某些场景下我们在一次操作中可能需要执行多个命令,而如果我们只是一个命令一个命令去执行则会浪费很多网络消耗时间,如果将命令一次性传输到 Redis 中去再执行,则会减少很多开销时间。

但是需要注意的是 pipeline 中的命令并不是原子性执行的,也就是说管道中的命令到达 Redis 服务器的时候可能会被其他的命令穿插。


 


(编辑:孝感站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读