
Redis
文章平均质量分 80
Redis学习笔记
-代号9527
逢山开路,遇水搭桥!纸上得来终觉浅,绝知此事要躬行。
展开
-
【Redis学习笔记】第十四章 Redis企业级解决方案与性能监控
缓存雪崩就是瞬间过期数据量太大,导致对数据库服务器造成压力。如能够有效避免过期时间集中,可以有效解决雪崩现象的出现(约40%),配合其他策略一起使用,并监控服务器的运行数据,根据运行记录做快速调整。原创 2022-08-25 00:24:55 · 347 阅读 · 0 评论 -
【Redis学习笔记】第十三章 Redis集群
集群就是使用网络将若干台计算机联通起来,并提供统一的管理方式,使其对外呈现单机的服务效果分散单台服务器的访问压力,实现负载均衡分散单台服务器的存储压力,实现可扩展性降低单台服务器宕机带来的业务灾难。原创 2022-08-24 00:55:42 · 185 阅读 · 0 评论 -
【Redis学习笔记】redis-trib.rb命令详解
是官方提供的Redis Cluster的管理工具,在src目录下,但该工具是用ruby开发的,所以需要准备相关的依赖环境。–replicas参数指定集群中每个主节点配备几个从节点,这里设置为1,即三主三从。16384个槽全部被分配,集群创建成功。原创 2022-08-24 00:03:41 · 4745 阅读 · 0 评论 -
【Redis学习笔记】第十二章 Redis哨兵模式
master宕机场景的处理:问题:怎么确认master确实宕机了?(中间断网1s就认为人挂了不合适)怎么找一个slave来暂替master?旧的master恢复以后怎么处理?哨兵(sentinel) 是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的master并将所有slave连接到新的master监控不断的检查master和slave是否正常运行。通知当被监控的服务器出现问题时,向其他(哨兵间,客户端)发送通知自动故障转移。原创 2022-08-23 00:27:47 · 1055 阅读 · 2 评论 -
【Redis学习笔记】第十一章 Redis主从复制
高并发高性能高可用对于单机的Redis,机器故障,很可能数据丢失,对业务造成灾难性打击。且内存容量也存在瓶颈问题。基于以上问题,准备多台服务器,互相连通。将数据复制多个副本保存在不同的服务器上,连接在一起,并保证数据是同步的。即使有其中一台服务器宕机,其他服务器依然可以继续提供服务,实现Redis的高可用,同时实现数据冗余备份。主从复制即:将master中的数据即时、有效的复制到slave中,master也叫主服务器,slave也叫从服务器。master与slave之间是一对多的关系。原创 2022-08-22 00:45:53 · 279 阅读 · 1 评论 -
【Redis学习笔记】第十章 Redis高级数据类型
Bitmaps本质来说是一种string,不过是以string中存储的数据的二进制位为单位进行操作的,是string中二进制位的操作API。HyperLogLog 用于统计不重复的数据的数量,运用了LogLog的算法。比如之前的统计UV,是使用了set类型实现的。以8部电影为例:看是否被点播,则看对应的bit位是0还是1。统计一天有几部被点播,则看有几个bit是1。统计每周、每月有几部被点播,则按位or就好,比如两天:11011011。Redis 应用于地理位置计算。先添加坐标,画个田字格。原创 2022-08-21 16:36:34 · 317 阅读 · 0 评论 -
【Redis学习笔记】第九章 Redis 核心配置
【代码】【Redis学习笔记】第九章 Redis 核心配置。原创 2022-08-21 12:35:41 · 187 阅读 · 0 评论 -
【Redis学习笔记】第八章 Redis删除策略
用CPU的性能换取存储空间(用时间换空间)2.2 惰性删除数据到达过期时间也不做处理,等下次访问这个数据的时候,若未过期,则返回数据。若过期,则删除并返回不存在。原创 2022-08-20 14:55:35 · 456 阅读 · 0 评论 -
【Redis学习笔记】第七章 Redis事务
定义事务的过程中,无语法错误,但逻辑错误导致不能正确执行,如对string进行lpush。这时能正确运行的指令会被执行,运行错误的命令不会被执行。双11热卖过程中,对已经售罄的货物追加补货,多个业务员都有权限进行补货,如何保证这个操作不会被重复进行?定义事务的过程中,有一个命令存在语法错误,整体事务中所有命令均不会执行,包括那些语法正确的命令。干一件事情的时候,被其他事情打断,可能会导致正在干的事情出现错误或者纰漏。锁是用户加的,必定存在加锁后未解锁的风险,所以解锁。multi后不能出现watch。原创 2022-08-19 23:05:09 · 265 阅读 · 0 评论 -
【Redis学习笔记】第六章 Redis持久化
AOF重写就是将对同一个数据的若干条指令,按照最终执行的结果转化成对应的指令进行记录。bgsave执行后如下:若daemonize yes,则日志中可看到返回消息,若daemonize no,则控制台可看到返回消息。,重启时再重新执行AOF文件中命令达到恢复数据的目的。AOF解决了持久化实时性的问题,是Redis持久化的主流方式。利用永久性存储介质将数据进行保存,在发生意外时将保存的数据进行恢复的工作机制称为持久化。:手动发起保存操作,Redis保存了这个操作,不立即执行,在合适的时候执行。...原创 2022-08-17 23:55:05 · 450 阅读 · 0 评论 -
【Redis学习笔记】第五章 Linux环境安装Redis
服务端用–port,客户端用-p。原创 2022-08-16 22:51:21 · 317 阅读 · 0 评论 -
【Redis学习笔记】第四章 Jedis的使用
Java语言连接redis服务,即Jedis。存于数据库中的数据,最终是和程序进行交互,进行读取与写入。Java语言连接redis服务可选:JedisLettuce可视化连接redis客户端。原创 2022-08-17 23:56:36 · 203 阅读 · 0 评论 -
【Redis学习笔记】第三章 Redis通用指令
随着数据量的暴增,key的数量也会增加,极易出现key的重复或冲突,为此,redis为每个服务提供有16个数据库,编号0到15,每个数据库之间的数据相互独立。各种数据类型中,key都是一个字符串,通过key获取redis中保存的数据。expireat key timestamp //使用时间戳。pexpire key milliseconds //毫秒。...原创 2022-08-15 23:46:05 · 423 阅读 · 0 评论 -
【Redis学习笔记】第二章【2.5】Redis数据类型--sorted_set
将到期处理时间记录为score值,按照排序功能排序,记录下一个要处理的时间,对于到期任务,移除redis中的记录,并更新下一个要处理的任务的时间。为提升性能,可将其分为多个sorted_set存储,如1小时内,1天内,周内,月内,季内,将即将操作的若干个任务纳入到1小时内处理的队列中。这样,往出来取信息展现给用户的时候,除去置顶list,就是300先出来,这也符合微信特点:新发的消息在最前面!使用微信的过程中,当微信接收消息后,会默认将最近接收的消息置顶,信息的排序会不停的交替。...原创 2022-08-15 00:35:31 · 198 阅读 · 0 评论 -
【Redis学习笔记】第二章【2.4】Redis数据类型--set
集团公司共具有12000名员工,内部OA系统中具有700多个角色,3000多个业务操作,23000多种数据,每位员工具有一个或多个角色,如何快速进行业务操作的权限校验?对于安全性更高的应用访问,仅仅靠黑名单是不能解决安全问题的,此时需要设定可访问的用户群体,依赖白名单做更为苛刻的访问验证。利用这些,redis 应用于随机推荐类信息检索,例如热点歌单推荐,热点新闻推荐,热卖旅游线路,应用APP推荐,大V推荐等。利用这些,redis 应用于同类信息的关联搜索,二度关联搜索,深度关联搜索,如共同好友等等。...原创 2022-08-14 14:56:27 · 372 阅读 · 0 评论 -
【Redis学习笔记】第二章【2.3】Redis数据类型--list
企业运营过程中,系统将产生出大量的运营数据,比如运维日志,其存于多台服务器,而最终又想按照顺序汇总查看,则可利用redis的list类型。存储多个数据,并对数据进入存储空间的顺序进行区分,底层使用了双向链表进行存储。lrem指令去实现这个效果,redis可应用于具有操作先后顺序的数据控制。...原创 2022-08-14 12:07:07 · 430 阅读 · 0 评论 -
【Redis学习笔记】第二章【2.2】Redis数据类型--hash
如上图,以用户id为key,每位客户创建一个hash存储其购物车信息,各商品id为field,数量为value。但这样其余商品信息(文字描述、图片、商家等等)需要二次查询数据库,所以将商品保存成两条field,field1保存数量,value存数字,field2存其余商品信息,value为一个json。由此,考虑将右边的主键合一,右边将每个属性对上它的值。参考上一节string中的存储,若将信息以json格式存储,以后频繁更新数据将会显得很笨重,将其拆分成多条数据后,又很冗余,如下图示意。...原创 2022-08-13 17:35:34 · 439 阅读 · 0 评论 -
【Redis学习笔记】第二章【2.1】Redis数据类型--string
set和mset在不同的数据量下,其效率性能谁高谁低不一定,再譬如单线程下,一下mset大量数据,则容易造成阻塞,孰优孰劣应当以实际生产环境为准。随着数据的增多,将一个大的表或库,分表分库,是一个常规选择,那如何保证,分表过程中自增主键的不重复性呢?Oracle 数据库具有 sequence 设定,可以解决该问题,但是 MySQL数据库并不具有类似的机。一个存储空间保存一个数据,如果字符串是一个整数的形式,则它也可以当作数字一样被操作。追加信息到原始信息后面(存在则追加,不存在则新建)......原创 2022-08-12 00:22:34 · 341 阅读 · 0 评论 -
【Redis学习笔记】第一章 Redis入门与安装
Redis (REmote DIctionary Server 远程字典服务)是用 C 语言开发的一个开源的高性能键值对(key-value)数据库。数据间没有必然的关联关系内部采用单线程机制进行工作高性能支持多种数据类型:字符串String、列表list、散列hash、集合set、有序集合sorted_set支持持久化,以便进行容灾恢复为热点数据加速查询(主要场景),如热点商品、热点新闻、热点资讯、推广类等高访问量信息等任务队列,如秒杀、抢购、购票排队等。......原创 2022-08-10 23:35:58 · 294 阅读 · 0 评论