在实战中可通过redis实现的功能

目录

  • 慢查询
  • pipeline(流水线)
  • 发布订阅
  • bitmap(字节位图)
  • HyperLogLog
  • GEO

一:慢查询

1.1、生命周期:

1.2、两个配置

1) "slowlog-max-len"                将执行命令添加到慢查询内,慢查询长度默认值:"128", 
2) "slowlog-log-slower-than"    慢查询的阈值,即查询时间超过阈值添加到慢查询内默认值:"10ms"(单位:微妙)

修改两个配置的方法

1、修改配置文件后重启(不支持使用此方法进行修改)

2、config set slowlog-max-len ***        默认10ms,通常设置为1ms

      config set slowlog-log-slower-than ***      默认128,不要设置过小,通常设置1000左右,倘若队列中的数据超出设置值,则                                                                          先进入的命令,将删除,

1.3、慢查询命令

slowlog get[n]:获取慢查询队列的,n代表获取条数

slowlog len:获取慢查询队列的长度

slowlog reset:清空慢查询队列

 

二:pipeline(流水线)

流水线作用:缩短网络时间

传统的请求访问时间=n次网路时间+n次命令时间

传统方式访问redis,花费时间比pipeline花费时间要长很多,

传统方式访问500次花费了:11秒左右

pipeline访问10000次只花费了:1秒左右

三、发布订阅

publish channel message:发布订阅消息

subscribe channel:订阅发布号

unsubscribe channel:取消订阅发布号

 

四、bitmap(存储类型为string,最大可存储512M)

 

setbit key offset value:给key中的位图对应offset的位置设置为value(value只能为0或者1),当超出位图位置时,其余位置将补0,及位图偏移量不宜过大,否则可能会产生较大的存储时间。

getbit key offset:获取key位图中对应offset中对应的值。

bitcount key [start end]:统计位图中start到end个字节之间包含1有多少个个数。

bitop op(and交集、or并集、not非、xor异或) key key1 key2:将一个或多个key进行(and、or、nor、xor)之间的操作。

bitpos key targetBit [start] [end]:获取指定字节范围内start到end(不指定范围则默认全部搜索)之间第一个偏移量(第一次出现)对应的值等于targetBit的所在位置。

 

BitMap和Set的比较

 

五、hyperloglog(使用极小的空间完成独立数据统计,可以作为百万级别数据的统计,弊端:①:取不出数据,②:存在错误率)

hyperloglog的本质是字符串

pfcount key element1 element2 element3....:向hyperloglog添加元素

pfcount:统计hyperloglog中元素的独立总数,存在容错率(错误率:0.81%)

pfmerger destkey sourceKey sourceKey2...:合并多个hyperloglog。

六、GEO(zset实现 地理信息定位:存储经纬度,计算两地距离,范围计算等)

geoadd key longitude latitude member  longitude1 latitude1 member1......:增加地理位置信息,

longitude:经度

latitude:纬度

members:标识

geopos key member....:获取地理位置信息。

geodist key member1 member2 [unit]:获取两个地理位置的距离

unit:(米m,千米km,英里mi,尺ft)

georadius key longitude latitude radius m|km|ft|mi [withcoord] [withdist] [withhash] [COUNT count] [asc|desc] [store key] [storedist key]:获取指定范围内的地理位置信息集合(指定查询经纬度)

georadiusbymember key longitude latitude radius m|km|ft|mi [withcoord] [withdist] [withhash] [COUNT count] [asc|desc] [store key] [storedist key] :获取指定范围内的地理位置信息集合(执行查询member)

withcoord:返回结果中包含经纬度

withdist:返回结果中包含距离中心节点位置

withhash:返回结果中包含geohash

COUNT count:指定返回结果的数量

asc|desc:返回结果安札距离中心节点的距离做升序或者降序

store key:将返回的地理位置信息保存到指定键

storedist key:将返回结果距离中心节点的距离保存到指定键

命令执行错误,需要下载3.2版本之后的redis才支持。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值