随笔分类 -  redis

初学redis
摘要:Redis概述 Redis是一个开源的key-value存储系统。 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。 这些数据类型都支持push/pop、 阅读全文
posted @ 2022-06-19 17:06 低调的。。。 阅读(19) 评论(0) 推荐(0) 编辑
摘要:Redis概述 Redis是一个开源的key-value存储系统。 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。 这些数据类型都支持push/pop、 阅读全文
posted @ 2021-08-10 18:33 低调的。。。 阅读(54) 评论(0) 推荐(0) 编辑
摘要:缓存穿透(跳过redis缓存疯狂访问数据库) key对应的数据在数据源并不存在,每次针对此key的请求从缓存获取不到,请求都会压到数据源(数据库),从而可能压垮数据源。 比如用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。 解决方案: (1) 对 阅读全文
posted @ 2021-08-09 21:22 低调的。。。 阅读(245) 评论(0) 推荐(0) 编辑
摘要:Redis集群 Redis 集群:实现了对Redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在这N个节点中,每个节点存储总数据的1/N。 Redis 集群通过分区来提供一定程度的可用性: 即使集群中有一部分节点失效或者无法进行通讯, 集群也可以继续处理命令请求。 数据分片(将数据分 阅读全文
posted @ 2021-08-09 18:40 低调的。。。 阅读(132) 评论(0) 推荐(0) 编辑
摘要:Redis_主从复制:主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master(主服务器)以写为主,Slave(从服务器)以读为主 作用:读写分离,性能扩展,容灾快速恢复 复制原理: 使用 (主要) 拷贝多个redis.conf文件include(写绝对路径) 创 阅读全文
posted @ 2021-08-08 20:55 低调的。。。 阅读(439) 评论(0) 推荐(0) 编辑
摘要:官方推荐两个都启用。 如果对数据不敏感,可以选单独用RDB。 不建议单独用 AOF,因为可能会出现Bug。 如果只是做纯内存缓存,可以都不用。 同时开启RDB和AOF,系统默认取AOF保存下来的数据(数据不会丢失) RDB的数据不实时,同时使用两者时服务器重启也只会找AOF文件。那要不要只使用AOF 阅读全文
posted @ 2021-08-08 16:58 低调的。。。 阅读(336) 评论(0) 推荐(0) 编辑
摘要:超卖问题(可以使用事务方式(乐观锁)通过对比本事务与数据库版本号进行控制(需要用watch进行监视) 也可以使用LUA脚本(包含在一个Lua脚本里面的redis命令具备原子性)) 连接超时问题(可以使用jedis连接池) 库存遗留问题(就是事务经常失败,库存还有很多)(可以使用LUA脚本进行解决(原 阅读全文
posted @ 2021-08-08 12:16 低调的。。。 阅读(538) 评论(0) 推荐(0) 编辑
摘要:设置: -Dfile.encoding=UTF-8 阅读全文
posted @ 2021-08-07 22:58 低调的。。。 阅读(149) 评论(0) 推荐(0) 编辑
摘要:Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 Redis事务的主要作用就是串联多个命令防止别的命令插队。 Redis事务三特性 单独的隔离操作 事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中, 阅读全文
posted @ 2021-08-07 20:55 低调的。。。 阅读(127) 评论(0) 推荐(0) 编辑
摘要:导入依赖 <!-- redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <!- 阅读全文
posted @ 2021-08-07 17:19 低调的。。。 阅读(48) 评论(0) 推荐(0) 编辑
摘要:1.redis修改配置文件和开放6379端口 进入redis.conf修改redis配置文件 root@ecs-sn3-medium-2-win-20200206213403:/etc# vi redis.conf /bind 127(linux使用/进行全文查找) 在前面加上#注释掉这句话(这句话 阅读全文
posted @ 2021-08-07 16:47 低调的。。。 阅读(94) 评论(0) 推荐(0) 编辑
摘要:1.redis修改配置文件和开放6379端口 进入redis.conf修改redis配置文件 root@ecs-sn3-medium-2-win-20200206213403:/etc# vi redis.conf /bind 127(linux使用/进行全文查找) 在前面加上#注释掉这句话(这句话 阅读全文
posted @ 2021-08-07 16:09 低调的。。。 阅读(505) 评论(0) 推荐(0) 编辑
摘要:Redis 3.2中增加了对GEO类型的支持。GEO ,Geographic,地理信息的缩写。该类型,就是元素的2维坐标,在地图上就是经纬度。 redis基于该类型,提供了经纬度设置,查询,范围查询,距离查询,经纬度Hash等常见操作。 添加地理位置信息(前经度 后纬度) (两极无法直接添加 已经添 阅读全文
posted @ 2021-08-07 14:51 低调的。。。 阅读(297) 评论(0) 推荐(0) 编辑
摘要:用于计算数据集中的基数(不重复数)个数 产生主要原因:在数据量非常大的情况下(使用redis中的hash set bitmaps)(使用数据库搜索)结果虽说精确不重复数计算占用空间非常大 添加多个不重复元素(返回1为添加成功,0添加失败) pfadd k1 java c++ php 计算多个集合中不 阅读全文
posted @ 2021-08-07 11:55 低调的。。。 阅读(64) 评论(0) 推荐(0) 编辑
摘要:Redis提供了Bitmaps这个“数据类型”可以实现对位的操作:( 1 )Bitmaps本身不是一种数据类型,实际上它就是字符串( key-value ) ,但是它可以对字符串的位进行操作。( 2 )Bitmaps 单独提供了一套命令,所以在 Redis中使用Bitmaps和使用字符串的方法不太相 阅读全文
posted @ 2021-08-07 11:35 低调的。。。 阅读(143) 评论(0) 推荐(0) 编辑
摘要:发布与订阅是一种(消息通信模式) :发送者发送消息,订阅者接受消息 客户端订阅频道(频道为channell1) subscribe channell1 另一客户端给频道发送消息(频道为channell1 消息为hello) publish channell1 hello 下图为订阅频道的客户端会接收 阅读全文
posted @ 2021-08-07 10:50 低调的。。。 阅读(35) 评论(0) 推荐(0) 编辑
摘要:有序集合zset 与 set相似 没有重复的元素的字符串集合 不同处为:zset每个成员关联了一个评分(score) ,被用来按照从低到高的方式排序集合中的成员 成员是唯一的,评分可以重复 底层具有两种结构(hash和跳跃表) hash将值和评分存储起来 用跳跃表存储评分(可以更快的查找到评分和对应 阅读全文
posted @ 2021-08-06 18:00 低调的。。。 阅读(453) 评论(0) 推荐(0) 编辑
摘要:hash是键值对集合 是string类型的filed 和 value的映射表, 类似Map<String,Object> 添加一个值到hash集合中(user:100为key 后面的为field 与value的映射) hset user:100 id 1 添加新的field和值(当前没有该field 阅读全文
posted @ 2021-08-06 14:51 低调的。。。 阅读(421) 评论(0) 推荐(0) 编辑
摘要:Set与List类似,存储数据不重复 是String类型的无序集合,底层为value为null的hash表,将存储的值放入key中实现去重的效果 添加,查找,删除的复杂度为O(1),查找时间固定 添加多个元素到key中(已经添加的会被忽略) sadd k1 v1 v2 v3 获取集合的所有值 sme 阅读全文
posted @ 2021-08-06 14:15 低调的。。。 阅读(318) 评论(0) 推荐(0) 编辑
摘要:redis中的List底层是个双向链表(对操作两端性能高,对操作中间性能低),可以添加元素到List的左边或者右边 列表使用快速链表(quicklist)数据结构存储,而快速链表就是双向链表与压缩列表(数组 为了节省内存)的组合。 当数据量少时使用压缩列表,当数据量大时使用双向链表 Redis使用字 阅读全文
posted @ 2021-08-05 19:48 低调的。。。 阅读(1210) 评论(0) 推荐(0) 编辑

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