
Redis
文章平均质量分 75
_
果将如此
这个作者很懒,什么都没留下…
展开
-
17_redis缓存过期淘汰策略
面试题 问题1:生产上你们的redis内存设置多少? 问题2:如何配置、修改redis的内存大小? 问题3:redis清理内存的方式?定期删除和惰性删除了解过吗? 问题4:redis缓存淘汰策略? 问题5:redis的LRu了解过吗?可否手写一个LRu算法? redis默认内存多少?在哪里查看? 如何设置修改? 查看Redis最大占用内存 打开redis配置文件,设置maxmemory参数,maxmemory是bytes字节类型,注意转换。 redis默认内存多少可以用? 一原创 2021-02-04 14:32:22 · 328 阅读 · 1 评论 -
16_分布式锁
分布式锁的面试题 问题1:Redis除了拿来做缓存,你还见过基于Redis的什么用法? 答:传统五大数据类型的落地应用;做分布式锁 问题2:Redis做分布式锁的时候有需要注意的问题? 问题3:如果是Redis是单点部署的,会带来什么问题? 那你准备怎么解决单点问题呢? 问题4:集群模式下,比如主从模式,有没有什么问题呢? 问题5:那你简单的介绍一下Redlock吧?你简历上写redisson,你谈谈 问题6:Redis分布式锁如何续期?看门狗知道吗? Base案例(boo原创 2021-02-04 14:29:30 · 313 阅读 · 2 评论 -
15_redis传统五大基本类型的落地应用
官网命令大全网址: http://www.redis.cn/commands.html 8大类型: String(字符类型) Hash(散列类型) List(列表类型) Set(集合类型) SortedSet(有序集合类型,简称zset) Bitmap(位图) HyperLogLog(统计) GEO(地理) 备注: 命令不区分大小写,而key是区分大小写的 help @类型名词 String # 最常用 set key value get key # 同时设置/获取多个键值(m就是mor原创 2021-02-04 14:25:16 · 228 阅读 · 0 评论 -
14_Redis 分布式锁
是什么 线程锁:主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段。线程锁只在同一JVM中有效果,因为线程锁的实现在根本上是依靠线程之间共享内存实现的,比如synchronized是共享对象头,显示锁Lock是共享某个变量(state)。 进程锁:为了控制同一操作系统中多个进程访问某个共享资源,因为进程具有独立性,各个进程无法访问其他进程的资源,因此无法通过synchronized等线程锁实现进程锁。 分布式锁:当多个进程不在同一个系统中,用分布式锁控制多个进程原创 2021-02-04 14:19:37 · 249 阅读 · 0 评论 -
13_缓存三大问题
是什么 广义的缓存就是在第一次加载某些可能会复用数据的时候,在加载数据的同时,将数据放到一个指定的地点做保存。再下次加载的时候,从这个指定地点去取数据。这里加缓存是有一个前提的,就是从这个地方取数据,比从数据源取数据要快的多。 Java狭义一些的缓存,主要是指三大类 虚拟机缓存(ehcache,JBoss Cache) 分布式缓存(redis,memcache) 数据库缓存 正常来说,速度由上到下依次减慢↓ 怎么做 1)缓存雪崩 由于原有缓存失效(或者数据未加载到缓存中),新缓存未原创 2021-02-04 14:17:35 · 228 阅读 · 0 评论 -
12_Redis集群
是什么 集群架构: 所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽 节点的fail是通过集群中超过半数的节点检测有效时整个集群才生效. 客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可 redis-cluster把所有的物理节点映射到[0-16383]slot上,cluster 负责维护node<->slot<->value Redis 集群中内置了 16384 个哈原创 2021-02-04 14:12:04 · 217 阅读 · 0 评论 -
11_Redis 哨兵模式
是什么 主从模式下,主机宕机,需要手动提升从机为主机,主机恢复后,也需要手动设置。比较麻烦,容易出错 哨兵模式:给集群分配一个站岗的 哨兵的作用:是对Redis系统的运行情况监控 它是一个独立进程,它的功能: 监控主数据库和从数据库是否运行正常 主数据出现故障后自动将从数据库转化为主数据库 如果主机宕,开启选举工作,选择一个从做主机 怎么做 虽然哨兵(sentinel) 释出为一个单独的可执行文件 redis-sentinel ,但实际上它只是一个运行在特殊模式下的 Redis 服务器,你可原创 2021-02-04 14:04:24 · 281 阅读 · 0 评论 -
10_Redis主从复制
是什么 持久化保证了即使redis服务重启也不会丢失数据,但是当redis服务器的硬盘损坏了可能会导致数据丢失,通过redis的主从复制机制就可以避免这种单点故障(单台服务器的故障)。 特点: 主redis中的数据和从上的数据保持实时同步,当主redis写入数据时通过主从复制机制复制到两个从服务上 主从复制不会阻塞master,在同步数据时,master 可以继续处理client 请求 主机master配置:无需配置 怎么做 工作中一般选用:一主两从或一主一从 数据会同步到从服务器。 在这个集群原创 2021-02-04 13:58:51 · 193 阅读 · 0 评论 -
9_Redis持久化方式
是什么 由于redis的值放在内存中,为防止突然断电等特殊情况的发生,需要对数据进行持久化备份。 即将内存数据保存到硬盘 怎么做 1、RDB持久化(默认开启方式) RDB 是以二进制文件,是在某个时间点将数据写入一个临时文件,持久化结束后,用这个临时文件替换上次持久化的文件,达到数据恢复。 优点: 使用单独子进程来进行持久化,主进程不会进行任何 IO 操作,保证了 redis 的高性能。 缺点: RDB 是间隔一段时间进行持久化,如果持久化之间 redis 发生故障,会发生数据丢失。所以这原创 2021-02-04 13:53:22 · 165 阅读 · 0 评论 -
8_jedis连接Redis
是什么 Jedis 是 Redis 官方首选的 Java 客户端开发包。 怎么做 1、创建项目:导入依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.7.2</version> </dependency> 注意: # 确认远程服务器是否可以ping通: pi原创 2021-02-04 13:49:08 · 194 阅读 · 0 评论 -
7_Redis 发布订阅模式
Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。 Redis 客户端可以订阅任意数量的频道。 客户端订阅频道: 新消息通过 PUBLISH 命令发送给频道 channel1: # 1)客户端订阅消息:订阅频道名为message1 192.168.77.130:6379> subscribe message1 Reading messages... (press Ctrl-C to quit) 1) "subscribe" 2) .原创 2021-02-04 13:45:45 · 182 阅读 · 0 评论 -
6_Redis事务
Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证: 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。 事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。 一个事务从开始到执行会经历以下三个阶段: 开始事务。 命令入队。 执行事务。 实例:以下是一个事务的例子, 它先以MULTI开始一个事务, 然后将多个命令入队到事务中, 最后由EXEC 命令触发事务, 一并执行事务中的所.原创 2021-02-04 13:43:14 · 161 阅读 · 1 评论 -
5_Redis常用指令
Redis是一种基于内存的数据库,并且提供一定的持久化功能,它是一种键值(key-value)数据库,使 用 key 作为索引找到当前缓存的数据,并且返回给程序调用者。 当前的 Redis 支持 6 种数据类型:字符串(String)、列表(List)、集合(set)、哈希结 构(hash)、有序集合(zset)和基数(HyperLogLog) 命令学习网站: http://doc.redisfans.com/index.html 1. String类型 1) 赋值_单个 语法: SET key .原创 2021-02-04 13:41:07 · 215 阅读 · 0 评论 -
4_安装Redis[Linux环境]
1、下载安装包 官网地址: # 英文地址 Http://redis.io/ # 中文地址 Http://www.redis.cn/ 百度网盘: 链接:https://pan.baidu.com/s/1YSzRtU-aRKH-IrBvbSJ5uQ 提取码:1111 2、配置 Redis的编译环境 Redis是C语言开发的,安装redis需要先去官网下载源码进行编译,编译需要依赖于GCC编译环境,如果 CentOS上没有安装gcc编译环境,需要提前安装 # 安装gcc编译环境(这里我们使用r原创 2021-02-04 13:36:50 · 175 阅读 · 0 评论 -
3_Redis 可视化工具使用 [ Windows 环境]
1、下载 官网地址: https://rdm.dev/pricing 百度网盘: 链接:https://pan.baidu.com/s/1-SXtADttUa-oKfbwg15nBg 提取码:2trm 2、安装 傻瓜式安装 3、使用原创 2020-12-25 20:29:05 · 225 阅读 · 0 评论 -
2_设置 redis 密码
配置文件方式设置密码 在 redis 根目录下找到 redis.windows.conf 配置文件 搜索 requirepass,找到注释密码行, 添加密码如下: 重启服务! 如果你想要查看一下 redis 密码也是可以的 登陆 redis 客户端: redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456 查看密码: config get requirepass ...原创 2020-12-25 20:10:14 · 178 阅读 · 0 评论 -
1_Windows 下安装 redis
1、下载 redis 官网地址: https://github.com/MicrosoftArchive/redis/releases 2、安装 redis 安装完成后效果 3、运行 redis 打开 cmd,进入到刚才解压到的目录,启动临时服务 redis-server.exe redis.windows.conf 注意: 通过这个命令,会创建 Redis 临时服务,不会在 window Service 列表出现 Redis 服务名称和状态,此窗口关闭,服务会自动关闭 4、进入 redis 客原创 2020-12-25 20:08:24 · 145 阅读 · 0 评论