![](https://img-blog.csdnimg.cn/20210913104946931.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Redis
文章平均质量分 89
Redis从入门到精通的详细讲解
胖太乙
没秃顶的程序员, 不是一个合格的程序员~~~~
展开
-
整理了一些关于 Redis的高频面试题【建议收藏】
1、Redis和 MySQL 有啥区别?mysql是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限在类型上mysql是关系型数据库,而redis是缓存数据库;作用上mysql用于持久化的存储数据到硬盘,而redis用于存储使用较为频繁的数据到缓存中2.mysql的运行机制mysql作为持久化存储的关系型数据库,相对薄弱的地方在于每次请.原创 2021-09-27 10:28:23 · 7808 阅读 · 2 评论 -
Linux、windows 下安装Redis图文教程
前言Redis:REmote DIctionary Server(远程字典服务器)是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(Key/Value)分布式内存数据库,基于内存运行,并支持持久化的NoSQL数据库,是当前最热门的NoSQL数据库之一,也被人们称为数据结构服务器。Redis与其他key-value缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的 key-value 类型.原创 2021-09-13 10:52:04 · 7873 阅读 · 1 评论 -
一、为什么要是用Redis?
前言随着大数据时代的来临,随之而来的三高问题(高并发,高性能 、高可用) 也随之而来。数据库的写入压力增加,读写集中在一个数据库上让数据库不堪重负,大部分网站开始使用主从复制技术来达到读写分离,以提高读写性能和读库的可扩展性,MySQL的master-slave模式成为这个时候的网站标配了。MySQL数据库也经常存储一些大文本的字段,导致数据库表非常的大,在做数据库恢复的时候就导致非常的慢,不容易快速恢复数据库,关系数据库很强大,但是它并不能很好的应付所有的应用场景,MySQL的扩展性差(需要复杂的技.原创 2021-09-15 15:39:13 · 8217 阅读 · 0 评论 -
二、Redis五大数据类型详细讲解
常规五大数据类型字符串(strings)这是最简单Redis类型。如果你只用这种类型,Redis就像一个可以持久化的memcached服务器(注:memcache的数据仅保存在内存中,服务器重启后,数据将丢失)。String类型是二进制安全的,意思是redis的string可以包含任何数据,比如jpg图片或者序列化的对象(一个redis中字符串value最多可以是512M)。对 key 的增删改查操作127.0.0.1:6379> set key1 value1 # 设置值O..原创 2021-09-16 11:11:11 · 8045 阅读 · 0 评论 -
三、Redis.conf 配置文件详细介绍
上一篇博客我们介绍了如何安装Redis,在Redis的解压目录下有个很重要的配置文件 redis.conf (/opt/redis-6.2.5/目录下),关于Redis的很多功能的配置都在此文件中完成的。一般为了不破坏安装的文件,出厂默认配置最好不要去改,所以我们将此配置文件复制到 /etc/redis/目录下了。[root@TR redis-6.2.5]# cp redis.conf /etc/redisConf[root@TR redis-6.2.5]# cd /etc/redisConf[ro.原创 2021-09-16 16:34:50 · 8770 阅读 · 0 评论 -
四、Redis 的持久化(RDB、AOF)
Redis 是内存数据库,如果不将内存中的数据库状态保存到磁盘,那么一旦服务器进程退出,服务器中的数据库状态也会消失。所以 Redis 提供了持久化功能!RDB(Redis DataBase)什么是RDB?RDB是在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里。Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。整个过程中,主进程是不.原创 2021-09-16 20:04:31 · 8008 阅读 · 0 评论 -
五、Redis事务的详细介绍
理论Redis事务的概念:Redis 事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令序列中。总结说:redis事务就是一次性、顺序性、排他性的执行一个队列中的一系列命令。Redis事务没有隔离级别的概念:批量操作在发送 EXEC 命令前被放入队列缓存,并不会被实际执行!Redis不保证原子性:Redis中,单条命令是原子性执行的,但事务不保证原子性,且没有回.原创 2021-09-17 11:34:30 · 7786 阅读 · 0 评论 -
七、Redis 主从复制以及哨兵模式的详细图解
概念主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave 以读为主。默认情况下,每台Redis服务器都是主节点;且一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点。主从复制的作用主要包括:数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。故障恢复:当主节点出现问题时.原创 2021-09-24 08:43:34 · 8100 阅读 · 0 评论 -
八、Sentinel.conf 配置文件详细介绍
前言哨兵有两个作用监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制原创 2021-09-25 09:57:43 · 10186 阅读 · 0 评论 -
九、Redis的缓存穿透和雪崩问题,以及解决方案
缓存穿透概念缓存穿透的概念很简单,用户想要查询一个数据,发现redis内存数据库没有,也就是缓存没有命中,于是向持久层数据库查询。发现也没有,于是本次查询失败。当用户很多的时候,缓存都没有命中,于是都去请求了持久层数据库。这会给持久层数据库造成很大的压力,这时候就相当于出现了缓存穿透。缓存击穿概念这里需要注意和缓存击穿的区别,缓存击穿,是指一个key非常热点,在不停的扛着大并发,大并发集中对这一个点进行访问,当这个key在失效的瞬间,持续的大并发就穿破缓存,直接请求数据库,就像在一个屏障.原创 2021-09-26 09:06:33 · 7752 阅读 · 0 评论 -
十、Redis 有了主从复制, 为什么还需要搭建集群?以及如何搭建Redis集群详细图解
https://blog.csdn.net/qq_42815754/article/details/82912130原创 2021-10-18 22:51:08 · 7055 阅读 · 2 评论 -
十一、Redis集群的水平扩展、伸缩
前言Redis3.0版本以后,有了集群的功能,提供了比之前版本的哨兵模式更高的性能与可用性,但是集群的水平扩展却比较麻烦,接下来介绍下Redis高可用集群是如何做水平扩展、伸缩的。不了解如何部署Redis集群的,可以参考我的另外一篇文章:《十、Redis 有了主从复制, 为什么还需要搭建集群?以及如何搭建Redis集群详细图解》环境准备三台云服务器(106.14.157.48,49.232.112.117,101.34.253.57)。大家也可以使用一台云服务器,部署多个Redis 实例也是可以的。原创 2021-10-25 22:06:54 · 12512 阅读 · 3 评论 -
十二、Redis LRU算法详述(Least Recently Used - 最近最少使用)
简介Redis是基于内存存储的 key-value 数据库。我们都知道,内存虽然快但空间大小有限,当物理内存达到上限时,系统就会跑的很慢,这是因为 swap 机制会将部分内存的数据转移到swap分区中,通过与swap的交换保证系统继续运行;但是swap属于硬盘存储,速度远远比不上内存,尤其是对于Redis这种QPS非常高的服务,发生这种情况是无法接收的。(注意如果swap分区内存也满了,系统就会发生错误!)因此如何防止Redis发生这种情况非常重要(面试官问到Redis几乎没有不问这个知识点的)。s原创 2021-11-16 22:08:01 · 4897 阅读 · 0 评论 -
十三、Redis LFU算法详述(Least Frequently Used - 最不常用)
十三、Redis LFU算法详述(Least Frequently Used - 最不常用)原创 2021-11-24 21:21:08 · 5560 阅读 · 1 评论 -
搭建Redis集群遇到的问题:Waiting for the cluster to join~~~
搭建Redis集群的过程中,执行到cluster create : … 的时候,发现程序在阻塞,显示:Waiting for the cluster to join 的字样,然后就无休无尽的等待…根据字样的提示,在等待集群的创建。嗯?这是什么原因?大部分情况下这是因为集群通信的端口没有开放!先说下解决方案:开放Redis服务的两个TCP端口。譬如Redis客户端连接端口为6379,而Redis服务在集群中还有一个叫集群总线端口,其端口为客户端连接端口加上10000,即 6379 + 10000 =原创 2021-10-18 22:51:38 · 16612 阅读 · 8 评论