随笔分类 -  Redis

摘要:1.下载 下载地址:https://redis.io/download 本人选择的是5.0.14版本 上传服务器。本人上传至usr/local目录下。 2.解压 将解压后的redis-5.0.14文件夹改名为redis 3.编译 cd到/usr/local/redis目录,输入命令make执行编译命 阅读全文
posted @ 2023-04-09 18:48 创客未来 阅读(87) 评论(0) 推荐(0) 编辑
摘要:什么是Jedis:是Redis官方推荐的Java连接开发工具!使用Java操作Redis的中间件(jar包)。如果你要使用Java操作Redis,那么一定要对Jedis十分熟悉! 1.用IDEA创建一个空项目 2.在空项目中创建一个空的Maven modeule。 3.创建空项目后要配置jdk 4. 阅读全文
posted @ 2021-02-13 17:21 创客未来 阅读(125) 评论(0) 推荐(0) 编辑
摘要:Redis缓存的使用,极大的提升了应用程序的性能和效率,特别是数据查询方面。但同时,它也代来也一些问题,其中,最要害的问题就是数据一致性的问题,从严格意义上讲,这个问题无解。如果对数据的一致性要求很高,那么就不能使用缓存。 另外的一些典型问题就是,缓存穿透、缓存雪崩和缓存击穿。目前,业界也有比较流行 阅读全文
posted @ 2021-02-13 15:34 创客未来 阅读(70) 评论(0) 推荐(0) 编辑
摘要:为了结绝主机宕机后要手动配置主机和从机太麻烦,Redis从2.8开始正式提供了Sentinel(哨兵)架构类结局这个问题。能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库。 哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行,其原 阅读全文
posted @ 2021-02-13 13:17 创客未来 阅读(134) 评论(0) 推荐(0) 编辑
摘要:主从复制:是指将一台Redis服务器的数据,复制到其他的Redis服务器,前者称为主节点(Master/leader),后者称为从节点(Slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave以读为主。 默认情况下,每台Redis服务器都是主节点,且 阅读全文
posted @ 2021-02-13 12:43 创客未来 阅读(60) 评论(0) 推荐(0) 编辑
摘要:Redis发布订阅(pub/sub)是一种消息通信模式:发布者(pub)发送消息,订阅者(sub)接收消息。 Redis客户端可以订阅任意数量的频道。 1.利用subscribe命令订阅给定的一个或多个频道信息(消息订阅者) 127.0.0.1:6379> subscribe ckfuture Re 阅读全文
posted @ 2021-02-13 11:30 创客未来 阅读(58) 评论(0) 推荐(0) 编辑
摘要:AOF(Append Only File) 将我们的所有命令都记录下来,相当于history,恢复的时候就吧这个文件全部命令执行一遍! 以日志的形式记录每个写操作,将Redis执行过程的所有指令记录下来,只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构建数据,换言之,redis重启 阅读全文
posted @ 2021-02-13 10:42 创客未来 阅读(749) 评论(0) 推荐(0) 编辑
摘要:Redis是内存数据库,如果不将内存中的数据库状态保存到磁盘,那么一旦服务器进程退出,服务器中的数据库状态也会消逝,所以Redis提供了持久化功能! 在主从复制中,rdb就是备用的,存在从机上边,不占用主机资源。 RDB: 在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapsho 阅读全文
posted @ 2021-02-13 10:07 创客未来 阅读(628) 评论(0) 推荐(0) 编辑
摘要:SpringBoot 操作数据:spring-data jpa、jdbc、mongodb、redis SpringData也是和SpringBoot齐名的项目。 在SpringBoot2.x之后,原来使用的jedis被替换为lettuce。 jedis:采用的直连,多个线程操作的话,是不安全,如果想 阅读全文
posted @ 2021-02-13 09:28 创客未来 阅读(98) 评论(0) 推荐(0) 编辑
摘要:1.悲观锁 很悲观,什么时候都会出问题,无论做什么都加锁,影响效率。 2.乐观锁 很乐观,任务什么时候都不会出问题,所以不会上锁,跟新数据的时候去判断一些,在此期间是否有人修改过这个数据,在Mysql中是利用Version字段实现!在Redis中利用watch命令。 获取version 更新的时候比 阅读全文
posted @ 2021-02-13 09:08 创客未来 阅读(1454) 评论(0) 推荐(0) 编辑
摘要:事务有 A C I D 原则 Redis事务本质:一组命令的集合!一个事务中的所有命令都会被序列化,在事务执行过程中,会按照顺序执行! 一次性、顺序性、排他性,执行一系列的命令 Redis事务没有隔离级别的概念! 所有的命令在事务中,并没有直接被执行!只有发起执行命令的适合才会执行!Exec Red 阅读全文
posted @ 2021-02-13 08:27 创客未来 阅读(142) 评论(0) 推荐(0) 编辑
摘要:位运算,只有两种状态,可以使用Bitmaps Bitmaps位图,数据结构!都是操作二进制位来进行记录,就只有0和1两个状态! 案例场景:365打卡。 1.利用setbit命令添加 127.0.0.1:6379> setbit sign 0 1 (integer) 0 127.0.0.1:6379> 阅读全文
posted @ 2021-02-11 08:37 创客未来 阅读(156) 评论(0) 推荐(0) 编辑
摘要:基数:不重复的元素 Redis Hyperloglog:用于做基数统计的算法 优点:占用的内容是固定的,2^64不同的元素的技术,只需要占用12kb内存!如果要从内存角度来比较的话Hyperloglog首选。 hyper log log命令以"pf"开头。 1.利用pfadd命令添加 127.0.0 阅读全文
posted @ 2021-02-11 08:22 创客未来 阅读(277) 评论(0) 推荐(0) 编辑
摘要:三种特殊数据类型 geospatial地理位置 规则:两极数据无法直接添加。 利用geo这个功能可以推算地理位置的信息,两地之间的距离,方圆几里的人! geospatial命令以“geo”开头 1.利用geoadd key longitude latitude member 命令添加位置 127.0 阅读全文
posted @ 2021-02-11 08:01 创客未来 阅读(193) 评论(0) 推荐(0) 编辑
摘要:在set的基础上,增加了一个值,set k1 v1 zset k1 score v1 1.利用zadd 命令添加一个值 127.0.0.1:6379> zadd myset 1 one (integer) 1 2.利用zadd命令添加多个值 127.0.0.1:6379> zadd myset 2 阅读全文
posted @ 2021-02-10 14:42 创客未来 阅读(294) 评论(0) 推荐(0) 编辑
摘要:Hash相当于map集合。本质和String类型没有太大区别,还是一个简单的key-value! 所有的Hash命令是以“h”开头的。 1.利用 hset命令 设置键值 127.0.0.1:6379> hset myhash field1 ckfuture (integer) 1 2.利用hget 阅读全文
posted @ 2021-02-10 14:04 创客未来 阅读(164) 评论(0) 推荐(0) 编辑
摘要:set是无序不重复集合。 set的命令都是“s”开头的 1.利用sadd 命令添加元素 127.0.0.1:6379> sadd myset hello (integer) 1 127.0.0.1:6379> sadd myset ckfuture (integer) 1 127.0.0.1:637 阅读全文
posted @ 2021-02-10 11:01 创客未来 阅读(74) 评论(0) 推荐(0) 编辑
摘要:List 是基本的数据类型,列表。redis命令不区分大小写。 在redis中,可以把List用作 栈、队列、阻塞队列。 所有的list命令都是以“l”开头的 1.向List插入数值 127.0.0.1:6379> lpush list one (integer) 1 127.0.0.1:6379> 阅读全文
posted @ 2021-02-10 10:20 创客未来 阅读(583) 评论(0) 推荐(0) 编辑
摘要:String 字符串常用命令 ① 利用 append 向key中追加数据,如果key不存在则新建 ② 利用strlen获取key值的长度 ③ 利用incr 进行自加1操作 ④ 利用decr 进行自减1操作 ⑤ 利用 incrby 进行步长增长操作 ⑥ 利用decrby 进行步长减量操作 ⑦ 利用 g 阅读全文
posted @ 2021-02-09 15:30 创客未来 阅读(106) 评论(0) 推荐(0) 编辑
摘要:Redis可以用作 数据库、缓存和消息中间件。 五大数据类型 Redis-Key ① 可以通过exists 判断key是否存在 ② 可以通过 move 移除key ③ 可以通过 expire 设置过期时间 ④ 可以通过 ttl查看剩余时间 超时后再次查看则key不存在 可以利用redis设置过期时间 阅读全文
posted @ 2021-02-09 14:28 创客未来 阅读(133) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示