redis
redis学习
dongkuijieIT
这个作者很懒,什么都没留下…
展开
-
redis缓存设计与功能优化(篇七)
缓存穿透缓存穿透是指查询一个根本不存在的数据, 缓存层和存储层都不会命中, 通常出于容错的考虑, 如果从存储层查不到数据则不写入缓存层。缓存穿透将导致不存在的数据每次请求都要到存储层去查询, 失去了缓存保护后端存储的意义。造成缓存穿透的基本原因有两个:第一, 自身业务代码或者数据出现问题。第二, 一些恶意攻击、 爬虫等造成大量空命中。解决方案一:当获取到的缓存数据为空时,以null为value,放入都缓存当中去,方法直接返回null String get(String key) {原创 2020-11-01 20:43:42 · 373 阅读 · 0 评论 -
redis分布式锁实战(redis篇六)
1.典型互联网分布式秒杀方案1.1 pom 文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.o原创 2020-10-29 21:49:59 · 231 阅读 · 0 评论 -
Redis集群配置及集群原理剖析(redis篇五)
1.高可用集群架构图redis集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。Redis集群不需要sentinel哨兵也能完成节点移除和故障转移的功能。需要将每个节点设置成集群模式,这种集群模式没有中心节点,可平扩展,据官方文档称可以线性扩展到上万个节点(官方推荐不超过1000个节点)。redis集群的性能和高可用性均优于之前版本的哨兵模式,且集群配置非常简单2.高可用集群配置2.1首先要在电脑上配置6台redis集群服务器(不会的可进入作者博客的redis篇一)2.原创 2020-10-25 16:09:34 · 428 阅读 · 0 评论 -
redis主从架构及哨兵模式(redis篇四)
1. redis架构图2. redis主从工作原理第一步:如果你为master配置了一个slave,不管这个slave是否是第一次连接上Master,它都会发送一个SYNC命令(redis2.8版本之前的命令)给master请求复制数据。第二步:master收到SYNC命令后,会在后台进行数据持久化通过bgsave生成最新的rdb快照文件,持久化期间,master会继续接收客户端的请求,它会把这些可能修改数据集的请求缓存在内存中。当持久化进行完毕以后,master会把这份rdb文件数据集发送sla原创 2020-10-25 14:36:06 · 362 阅读 · 1 评论 -
redis持久化(redis篇三)
Redis持久化1.RDB 快照1.1什么是RDB快照?RDB是在某个时间点将数据写入一个临时文件,持久化结束后,用这个临时文件替换上次持久化的文件,达到数据恢复。2.1怎样设置RDB快照?2.1.1 打开redis.conf 文件vi redis.conf2.1.2 修改配置文件:dbfilename dump.rdb 配置生成RDB文件的名字dir /root/redisRdb/6379 存储RDB文件位置2.1.3 RDB生成策略save 900 1 Redis 在满足原创 2020-10-22 21:40:56 · 136 阅读 · 0 评论 -
Redis核心数据结构(redis篇二)
1.redis五种数据结构2.redis数据结构命令精讲2.1 String2.1.1 操作:字符串常用操作SET key value //存入字符串键值对MSET key value [key value ...] //批量存储字符串键值对SETNX key value //存入一个不存在的字符串键值对GET key //获取一个字符串键值MGET key [key ...] //批量获取字符串键值DEL key [key ...] /原创 2020-10-17 21:48:58 · 267 阅读 · 2 评论 -
redis安装与启动客户端(redis篇一)
redis安装1.安装gcc环境,命令:yum install gcc2.下载redis:wget http://download.redis.io/releases/redis-5.0.4.tar.gz3.无weget命令的话,执行yum -y install wget4.解压redis:tar -zxvf redis-5.0.4.tar.gz5.进入redis目录 cd redis-5.0.46.编译:make7.启动:./src/redis-server ./redis.confred原创 2020-10-15 21:18:57 · 328 阅读 · 0 评论 -
redis底层数据结构
redis的数据结构1.1 String字符串表现形式为数据结构:SDS(简单的动态字符串)使用原因:redis是使用c语言开发的,但在c语言中是没有字符串类型的,只能使用指针或符数组的形式表示一个字符串,所以在redis设计了一种简单的动态字符串(可以根据不同的数据类型不同的数据结构选择不同的数据结构)支持的数据类型:字符串,整数(源自递增,返回一个递增以后的值),浮点SDS模型图:优点:1,SDS获取字符串长度复杂度O(1),而C的字符串为O(n)。因为SDS保存了长度在len中原创 2020-09-29 21:34:54 · 225 阅读 · 0 评论