
Redis
Redis学习
Wanidde
本人很懒,什么都没有留下 ^_^
展开
-
Redis缓存穿透、缓存击穿和缓存雪崩
缓存穿透(没查到引起)缓存穿透其实就是用户想要查询一个数据,发现redis内存数据库中没有,也就是缓存没有命中,然后就向持久层数据库查询,发现也没有要查询的信息,于是就查询失败。当用户很多的额时候,缓存都没有命中,于是都去请求数据库,这会给数据库很大的压力,于是就出现了缓存穿透。解决方案:1、布隆过滤器布隆过滤器(Bloom Filter)是一种数据结构,对所有可能查询的参数以has...原创 2020-04-14 21:10:13 · 695 阅读 · 0 评论 -
Redis——哨兵模式
哨兵模式主从切换技术的方法是:当主服务器宕机后,需要手动的把一台服务器切换为主服务器,需要人攻的干预,会造成一段时间内服务不可用。Redis从2.8开始提供了Sentinel(哨兵)架构来解决这个问题。哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独独立的进程,会独立运行。原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。哨兵...原创 2020-04-14 19:56:03 · 447 阅读 · 0 评论 -
Redis中的主从复制(模拟一主二从)
主从复制:主从复制是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave以读为主。默认情况下,每台Redis服务器都是主节点。且一个主节点可以有多个从节点,但一个从节点只能有一个主节点。主从复制的作用:1、数据冗余:...原创 2020-04-14 17:40:46 · 500 阅读 · 0 评论 -
Redis整合SpringBoot
撒子是jedis?jedies是Redis官方推荐的java连接开发工具。使用Java操作Redis的中间件。使用:我们先在windows上下载Redis测试:https://github.com/microsoftarchive/redis/releases/tag/win-3.2.100在运行的时候要打开redis-server.exe和redis-cli.exe。1、...原创 2020-04-13 17:41:26 · 293 阅读 · 0 评论 -
Redis持久化——RDB和AOF
撒子是持久化?Redis是内存数据库,如果不将内存中的数据库状态保存到磁盘,那么一旦服务器进程退出,服务器中的数据库状态也会消失。所以Redis提供了持久化功能。redis提供两种方式进行持久化,一种是RDB持久化(将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化),另外一种是AOF持久化(将Reids的操作日志以追加的方式写入文件)。RDB(Redis Dat...原创 2020-04-13 18:05:47 · 286 阅读 · 0 评论 -
Redis中的事务和监控(乐观锁)
事务Redis事务本质:一组命令的集合。一个事务中的所有命令都会被序列化,在事务执行过程中,会按顺序执行。Redis事务的特性:一次性 顺序性 排他性Redis事务没有隔离级别的概念所有的命令在事务中并没有直接被执行,只有发起执行命令的时候才会执行 ExecRedis单条命令是保证原子性的,但是事务是不保证原子性的!Redis的事务开启事务(multi) 命...原创 2020-04-13 13:57:02 · 251 阅读 · 0 评论 -
Redis.conf配置
单位:配置文件unit单位对大小写不敏感INCLUDES包含:可以引入多个配置文件网络NETWORK:bind 127.0.0.1 #绑定的ipprotected-mode yes #保护模式port 6379 #端口设置通用GENERAL:daemonize yes #以守护进程的方式运行,默认是no,需要自己开启为yesp...原创 2020-04-13 18:04:28 · 1534 阅读 · 1 评论 -
Redis中三种特殊的数据类型
geospatial地理位置增加一个定位geoadd china:city 116.40 39.90 beijinggeoadd china:city 106.50 29.53 chongqing获取当前定位deopos china:city beijing两个定位之间的距离单位:m标识单位为米km标识单位为千米mi标识单位为英里ft标识单位为英尺geodist china...原创 2020-04-12 11:44:10 · 2080 阅读 · 0 评论 -
Redis五大数据类型——Zset
Zset(有序集合)在set的基础上,增加了一个值来进行排序 set k1 v1 zset k1 score1 v1 存储班级成绩表,工资表排序,热搜排行榜向集合中增值:127.0.0.1:6379> zadd myset 1 one #添加一个值(integer) 1127.0.0.1:6379> zadd myset 2 two 3 three #添加多个...原创 2020-04-11 20:07:16 · 328 阅读 · 0 评论 -
Redis五大数据类型——Hash
Hash(哈希)Map集合,key-map集合 hash变更的数据user,name,age,尤其是用户信息之类的,经常变动的信息。 hash更适合对象的存储,String更适合字符串存储set值,获取值,移除值:127.0.0.1:6379> hset user name lyr #set一个具体的key-value(integer) 1127.0.0.1:6379&...原创 2020-04-11 20:04:16 · 225 阅读 · 0 评论 -
Redis五大数据类型——Set
Set(集合)集合是无序不重复的通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。添加,获取,移除元素:127.0.0.1:6379> sadd myset "hello" #set集合中添加元素(integer) 1127.0.0.1:6379> sadd myset "redis"(integer) 1127.0.0.1:6379> sme...原创 2020-04-11 20:00:24 · 157 阅读 · 0 评论 -
Redis五大数据类型——List
List(集合)集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。list实际上是一个链表,可以再Node的前面或者后面插入值 如果key不存在,创建新的链表 如果key存在,就新增内容 如果移除了所有的值就是一个空链表,代表不存在写值读值:127.0.0.1:6379> lpush list one #将一个或多个值插入到列表头部(左)(integ...原创 2020-04-11 18:16:55 · 191 阅读 · 0 评论 -
Redis五大数据类型——String
String(字符串)string 是 redis 最基本的类型,一个 key 对应一个 value。string 类型的值最大能存储 512MB。基本命令:127.0.0.1:6379> set key1 hello #设置值OK127.0.0.1:6379> get key1 #获取值"hello"127.0.0.1:6379> keys * #...原创 2020-04-11 18:07:13 · 245 阅读 · 0 评论 -
了解Redis
撒子是Nosql?Nosql:Not Only SQL (不仅仅是SQL) 非关系型数据库特点:方便扩展(数据之间没有关系,很好扩展) 大数据量高性能(Redis一秒写8万次,读11万次) 数据类型多样性(不需要实现设计数据库,随去随用)对比SQL和NoSQL传统的RDBMS:结构化组织 SQL 数据和关系都在单独的表中 数据定义语言 严格的一致性 基...原创 2020-04-11 17:57:40 · 263 阅读 · 0 评论 -
Redis中进行性能测试
撒子是redis-banchmark?redis-banchmark是Redis自带的一个压力测试工具我们可以通过下面的命令来测试redis-benchmark [option] [option value]redis 性能测试工具可选参数如下所示:测试执行100000个请求测试:redis-benchmark -h localhost -p 6379 -...原创 2020-04-10 15:38:24 · 486 阅读 · 0 评论 -
CentOS上安装Redis
Redis是撒子?Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。edis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,很大程度补偿了memcached这类key/value存储的不足...原创 2020-04-10 15:35:16 · 294 阅读 · 0 评论