
redis
文章平均质量分 70
azh89125
这个作者很懒,什么都没留下…
展开
-
redis 分布式锁
redis 分布式锁原创 2022-09-16 09:12:40 · 424 阅读 · 0 评论 -
redis 必知必会
1.redis 数据类型和常见使用场景 1,string:最基本的数据类型,二进制安全的字符串,最大512M。 2,list:按照添加顺序保持顺序的字符串列表。 3,set:无序的字符串集合,不存在重复的元素。 4,sorted set:已排序的字符串集合。 5,hash:key-value对的一种集合。 6,bitmap:更细化的一种操作,以bit为单位。 7,hyperloglog:基于概率的数据结构。 # 2.8.9新增 ...原创 2022-09-16 09:21:17 · 365 阅读 · 0 评论 -
redis 介绍
1.redis 数据类型2.reids 常见数据类型使用场景3.redis 常见模块4.redis 备份与恢复5.redis 常见问题原创 2022-06-22 09:13:43 · 3368 阅读 · 0 评论 -
redis geo
redis geo原创 2022-03-19 16:23:52 · 179 阅读 · 0 评论 -
redis HyperLogLog
redis hyperloglog原创 2022-03-19 14:57:54 · 144 阅读 · 0 评论 -
redis set
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。集合对象的编码可以是 intset 或者 hashtable。Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。集合中最大的成员数为 - 1 (4294967295), 每个集合可存储40多亿个成员)。原创 2022-03-18 11:16:48 · 123 阅读 · 0 评论 -
redis 哈希(Hash)
1、概述Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。Redis 中每个 hash 可以存储 - 1 键值对(40多亿)。2、常见命令HDEL key field [field ...]:删除一个或多个Hash的fieldHEXISTS key field:判断field是否存在于hash中HGET key field: 获取hash中field的值HGETALL key:从hash中读取全部的原创 2022-03-17 16:19:03 · 3701 阅读 · 0 评论 -
redis list 数据类型
redis list 命令和使用场景原创 2022-03-17 14:45:05 · 1286 阅读 · 0 评论 -
redis bitmap
1.概述Redis从2.2.0版本开始新增了setbit,getbit,bitcount,bitop等几个bitmap相关命令。虽然是新命令,但是并没有新增新的数据类型,因为setbit等命令只不过是在set上的扩展。通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身。Bitmaps 本身不是一种数据结构,实际上它就是字符串(key 对应的 value 最后的一串二进制),但是它可以对字符串的位进行操作。 Bitmaps 单独提供了一套命令,所以在 Redis 中使用 Bitm原创 2022-03-17 09:34:03 · 478 阅读 · 0 评论 -
redis string 类型
redis string 命令使用场景原创 2022-03-14 11:35:07 · 184 阅读 · 0 评论 -
php redis 利用zset 限流
思路1、限流需求中存在一个滑动的时间窗口,而zset的score值可以用来圈定时间窗口,窗口之外的数据都可以删除2、zset的value需要是一个唯一的值,只需要保证唯一性即可3、如果按照某个接口单位时间允许访问次数,那么key可以用接口路径,如果是限制单个用户那么key可以结合userId4、缺点是内存有可能占用过多,如果用户60s之内不能请求超过100w次,那么就需要在zset中添加100w个值<?phpclass Limit{ public $redis = n原创 2021-07-28 09:47:07 · 774 阅读 · 1 评论 -
Redis Streams 介绍
Stream是Redis 5.0版本引入的一个新的数据类型,它以更抽象的方式模拟日志数据结构,但日志仍然是完整的:就像一个日志文件,通常实现为以只附加模式打开的文件,Redis流主要是一个仅附加数据结构。至少从概念上来讲,因为Redis流是一种在内存表示的抽象数据类型,他们实现了更加强大的操作,以此来克服日志文件本身的限制。Stream是Redis的数据类型中最复杂的,尽管数据类型本身非常简单,它实现了额外的非强制性的特性:提供了一组允许消费者以阻塞的方式等待生产者向Stream中发送的新消息,此外还有原创 2022-03-06 16:57:45 · 1411 阅读 · 0 评论 -
redis 哨兵模式安装和需要注意的地方
1 .安装docker-redis docker-redis-sentine2.注意1.docker安装redis bind 0.0.0.0 而不是容器对应的ip2.docker-redis-sentinel 和docker-redis 必须是在同一个网络,否则两个容器无法通信3.如果主从同步没问题,但是故障无法转移注意查看redis 从服务器配置replica-announce-ip "172.18.95.170" (明确自身身份也即是当前redis 服务器主机的ip)repl.原创 2022-02-27 14:46:30 · 734 阅读 · 0 评论 -
redis 常见问题总结
1.Redis是单线程还是多线程呢? Redis不同版本之间采用的线程模型是不一样的,在Redis4.0版本之前使用的是单线程模型,在4.0版本之后增加了多线程的支持,在4.0之前虽然我们说Redis是单线程,也只是说它的网络I/O线程以及Set 和 Get操作是由一个线程完成的。但是Redis的持久化、集群同步还是使用其他线程来完成。4.0之后添加了多线程的支持,主要是体现在大数据的异步删除功能上,例如 unlink key、flushdb async、flushall async 等2....原创 2022-02-18 09:32:11 · 190 阅读 · 0 评论 -
redis 主从复制原理
从服务器发送sync 命令主服务器收到sync执行bgsave命令生成rdb快照并使用缓存区存储此后命令所有写操作主服务器执行bgsave命令后向从服务器发送rdb快照并在发送期间继续记录此后执行的所有写命令从服务器收到快照文件丢弃所有旧命令,并载入快照文件主服务器发送快照文件后向所有从服务器发送缓存区写命令从服务器完成快照的载入并执行主服务器发送的缓存区命令...原创 2021-08-22 16:35:49 · 83 阅读 · 0 评论