E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Redis-
(面试高频)
Redis-
击穿、穿透和雪崩
关于击穿、穿透和雪崩你真的了解麽?相信你看完了以下我的介绍,会有所了解...击穿通俗的说击穿:前提是对某一key发生了高并发至redis,恰巧那么一瞬间key消失(过期时间/LRU/LFU),此时key的消失造成并发访问DB。先上图,一张图抵过1万句废话,呵呵;-)击穿图解.png击穿图解:由于redis是单线程的,即使高并发请求过来,那也得一个个处理,总有个先进来的请求。请求过程分为->1,ge
zzj0990
·
2023-04-12 13:17
Redis-
数据结构
思维导图redis是key-value型数据库,key的数据类型string,value的数据类型有五种(常见的)string、list、hash、set、zset。五种数据类型与底层数据结构的对应关系如下图:数据类型及底层数据结构一、哈希表redis使用全局哈希表存储库中键值对关系,全局哈希表类似一个数组,每一个元素称为一个哈希桶,桶中存储两个指针*key和*value,分别指向key和valu
黄sir_
·
2023-04-10 17:23
Redis-
哨兵模式原理剖析和配置
目录1、什么是哨兵模式2、如何配置哨兵模式3、哨兵模式的优缺点1、什么是哨兵模式主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更多时候,我们优先考虑哨兵模式。Redis从2.8开始正式提供了Sentinel(哨兵)架构来解决这个问题。谋朝篡位的自动版,能够后台监控主机是否故障,如果故障了
Rk..
·
2023-04-10 08:25
Redis
redis
数据库
java
Redis-
哨兵模式
概述主从切换技术的方法是:当主服务器宕机后,需要手动把一台服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推挤的方式,更多时候,我们优先考虑哨兵模式。Redis从2.8开始正式提供了Sentinel(哨兵)架构来解决这个问题。谋权篡位的自动版,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,他会独立运行,其原理是哨兵通过发送命令,等待Rei
奔跑的蜗牛.
·
2023-04-10 08:21
redis
redis
数据库
缓存
Redis用法
//原生用法//$redis=new\Redis();//$
redis-
>connect(Config("REDIS_HOST"),Config("REDIS_PORT"));//$
redis-
>SET
小蝎子tt
·
2023-04-10 06:24
Redis Key-Value数据库 【实战】
文章目录一、手机验证码【简单】二、
Redis-
事务-锁机制【原理】1、redis事务2、redis事务锁3、redis事务三特性三、Redis秒杀案例【实操】1、ab测试2、超卖问题—乐观锁3、高并发导致连接超时问题
进击的程序猿~
·
2023-04-10 05:54
中间件
数据库
数据库
redis
lua
分布式锁
Redis-
哨兵模式以及集群
在开始这部分内容之前需要先说一下复制功能,因为这是Redis实现主从数据同步的实现方式。复制功能如果存在两台服务器的话,我们可以使用redis的复制功能,让一台服务器去同步另一台服务器的数据。现在我启动了两台redis服务器,一个端口是6379,一个端口是6380。我们在6380的客户端执行命令:slaveof127.0.0.16379让80服务器去复制79的数据:在6380这台服务器去复制637
心雨
·
2023-04-09 14:45
redis
数据库
服务器
运维
Redis-
客户端和服务器
事件文件事件:Redis服务器通过套接字与客户端进行连接,文件事件就是服务器对套接字的抽象操作。文件事件处理器:使用I/O多路复用程序同时监听多个套接字,并根据套接字执行的任务关联不同的事件处理器。以单线程的方式运行,即实现了高性能的网络通信模型,也很好的与Redis服务器中其他单线程运行的模块进行对接,保持Redis内部单线程设计的简单性。文件事件处理器的构成:套接字、I/O多路复用程序、文件事
峥嵘岁月1
·
2023-04-09 02:30
Redis
redis
Redis的安装及启动(附带一些bug的解决)
参考黑马程序员这个视频基础篇-04.初识
Redis-
安装Redis及启动的三种方式_哔哩哔哩_bilibili,资料包什么的去黑马公众号就能获取。
牛大了2023
·
2023-04-08 01:29
redis
bug
java
redis
linux
Redis-
高并发缓存问题及解决方案
Redis缓存问题解决方案1.缓存穿透1)什么是缓存穿透缓存穿透是指查询一个根本不存在的数据,缓存层和存储层都不会命中,通常出于容错的考虑,如果从存储层查不到数据则不写入缓存层。缓存穿透将导致不存在的数据每次请求都要到存储层去查询,失去了缓存保护后端存储的意义。2)造成缓存穿透的原因1.自身业务出现问题或者数据有问题。2.黑客攻击,制造大量不存在的key利用压测工具等进行攻击3)解决方案1.缓存空
程序员落雪
·
2023-04-07 21:58
redis
缓存
redis
java
brPop和blPop,让Redis帮你阻塞进程
List有值的时候,会立刻pop出来brpop意思blockrightpop阻塞式右侧出队blpop意思blockleftpop阻塞式左侧出队说完了,上代码代码一$redis=newRedis();$
redis
Vencenty
·
2023-04-07 08:46
PHP
Redis
Redis-
哨兵杂谈
【哨兵小结】:【master_link_status:down】解决方案:查看日志是密码验证没有通过,造成混乱的原因主要是“bind127.0.0.1”。把主从的requirepass和masterauth密码都重新设置,设置最简。把bind127.0.0.1删掉。如果主从不能同步,有可能是没有同时设置requirepass。如果被拒就是主服务redis-server没有启动成功。(包括redis
云中明月
·
2023-04-06 16:33
redis高并发下如何抢购防止超卖问题
重点在于第二个问题,我们看看下面一种常规的实现代码:'tcp','host'=>'127.0.0.1','port'=>'6379'));//redis登录$
redis-
>aut
小伟_be27
·
2023-04-06 09:01
Redis-
常用数据结构
Redis常用数据结构Redis提供了一些数据结构供我们往Redis中存取数据,最常用的的有5种,字符串(String)、哈希(Hash)、列表(list)、集合(set)、有序集合(ZSET)。字符串(String)字符串类型是Redis最基础的数据结构。首先键都是字符串类型,而且其他几种数据结构都是在字符串类型基础上构建的,所以字符串类型能为其他四种数据结构的学习奠定基础。字符串类型的值实际可
小二上酒8
·
2023-04-04 12:12
java
后端
数据库
开发语言
redis
redis-
数据结构、io
1.redis数据结构1.1字典kv是什么每个键值对都会是一个dictEntry·sethelloword为例,因为Redis是KV键值对的数据库,每个键值对都会有一个dictEntry(源码位置:dict.h)简单描述加载原理server启动,加载redisdb进内存形成数据库,形成数据库后,马上读取dict字典。形成dict字典后,读取dicththt[2]哈希表,里面有dictentry数组
莫等闲!
·
2023-04-04 08:08
#
缓存
redis
redis-
最佳实践
1.redis键值设置1.1key的设计遵循[业务名称]:[数据名(value的含义)]:[id]长度不超过44byte例子:login登录业务id为10存储的是user信息key为String类型底层编码采用int、embstr、raw三种embstr在小于44字节使用,连续内存,占用内存小当(v)字节数大于44字节时,会转为raw模式存储,在raw模式下,内存空间不是连续的,而是采用一个指针指
莫等闲!
·
2023-04-04 08:38
#
缓存
redis
redis-
高级
1.redis是否多线程redis4之后慢慢支持多线程,知道6/7才稳定。1.1redis单线程是什么意思主要是指Redis的网络IO和键值对读写是由一个线程来完成的,Redis在处理客户端的请求时包括获取(socket读)、解析、执行、内容返回(socket写)等都由一个顺序串行的主线程处理,这就是所谓的“单线程”。这也是Redis对外提供键值存储服务的主要流程。Redis单线程指的是「接收客户
莫等闲!
·
2023-04-04 08:38
#
缓存
redis
数据库
缓存
Redis-
五种常用数据结构、持久化机制、主从复制、缓存穿透/击穿/雪崩、哨兵、集群、事务、分布式锁-个人笔记
redis:基于内存,单线程处理所有客户端请求Redis五种常用数据结构的底层是怎样的?五种数据结构使用场景。持久化机制?rdb和aof的优缺点?Redis可以用来做什么?怎么做?Redis的执行效率突然变得很慢,是有什么原因导致的?缓存穿透/雪崩?如何处理?定义:一款内存高速缓存数据库(全称远程数据服务);使用C语言编写,Redis是一个key-value存储系统。一个键最大能存储512MB数据
a_sherlock
·
2023-04-04 07:24
Redis
分布式
分布式锁
redis
数据结构
数据库
中间件-
Redis-
运维经验总结
一、Redis缓存更新策略1、当内存超过maxmemory阈值后,对数据进行剔除,具体选择的剔除算法可通过maxmemory-policy配置LRU/LFU算法。一致性最差,是保底的策略。2、给缓存数据设置超时时间,过期后自动删除。存在一个数据不一致的窗口。3、主动更新。一致性最好。二、Redis缓存穿透缓存穿透导致不存在的数据每次请求都会到存储层查询,失去了缓存保护存储层的意义。1、缓存空对象。
平凡即幸福
·
2023-04-03 05:04
中间件
缓存技术
Linux(Centos7)安装Redis
、下载并解压安装包进入/usr/local文件夹下cd/usr/local执行命令wgethttp://download.redis.io/releases/
redis-
爱笨笨的阿狸
·
2023-04-02 16:59
Redis-
都说它快为什么那么快
现在主流NoSql要数Redis、Memcache,但仍有Redis一家独大的趋势,这可能也是因为Redis拥有强大的性能和主从丰富的数据类型Memcache:代码层次类似Hash支持简单数据类型不支持数据持久化存储不支持主从不支持分片Redis数据类型丰富支持数据磁盘持久化存储支持主从支持分片为什么Redis能那么快?--10w+QPS完全基于内存,绝大部分请求是纯粹的内存操作,执行效率高数据结
夜阑人儿未静
·
2023-04-02 13:57
redis-
主从复制+哨兵守卫
前言Redis是一个内存数据库,支持多样类型的数据存储和查询,而且采用了高效的算法把数据压缩到最小。一般测试环境,搭建一个Redis实例就可以满足需求,但是生产环境中,单个Redis实例一旦挂掉之后,就不能提供内存存储服务,所以需要部署多个实例来提高容错性,挂掉一个或多个也能正常提供服务,实现724无间断服务。那么多个Redis实例该怎样部署配合才能满足需求呢?主从复制既然有多个实例,就应该有主有
ssehs
·
2023-04-02 08:15
服务器
redis
Redis-
动态字符串
1.动态字符串redis中的字符串,是对c语言中的字符串(以空字符串结尾的字符数组)进行了一层包装,自己定义了一个结构块,名为动态字符串(simpledynamicstring,SDS)的抽象类型,并且将SDS作为redis默认字符串类型(可以表示字符串、整数、位图)参考:redis的设计与实现1.1.动态字符串结构structSDS{//记录buf数组中已经使用的字节数量//等于sds所保存的字
艾特小师叔
·
2023-04-01 01:26
python配置celery消息队列【完整版汇总】
完整目录:celery的介绍开始配置-启动
Redis-
安装对应的库-配置Celery-启动celery-写一个接口去调用任务-获取任务的执行结果celery的介绍首先介绍一下celeryCelery是
-青辰-
·
2023-03-31 01:33
django
django
redis
python
后端
Redis - 一个简单的排行榜小项目
文章目录
Redis-
一个简单的排行榜小项目1.项目分析2.项目准备3.项目编写4.项目验证5.扩展点(ApplicationRunner/InitializingBean)
Redis-
一个简单的排行榜小项目
丶从此过客
·
2023-03-31 00:44
Redis分布式缓存
Java
Redis
redis 缓存预热数据
一千万用户白名单load缓存Redis缓存预热数据(Springboot项目初始化加载)排行榜小项目
Redis-
一个简单的排行榜小项目
globalcoding
·
2023-03-30 23:19
java
redis
缓存
java
Redis-
什么是缓存雪崩、缓存击穿、缓存穿透
用户的数据一般都是存储于数据库,数据库的数据是落在磁盘上的,磁盘的读写速度可以说是计算机里最慢的硬件了。当用户的请求,都访问数据库的话,请求数量一上来,数据库很容易就奔溃的了,所以为了避免用户直接访问数据库,会用Redis作为缓存层。因为Redis是内存数据库,我们可以将数据库的数据缓存在Redis里,相当于数据缓存在内存,内存的读写速度比硬盘快好几个数量级,这样大大提高了系统性能。引入了缓存层,
时间邮递员
·
2023-03-30 17:47
Redis
redis
缓存
数据库
Springboot最全权限集成
Redis-
前后端分离-springsecurity-jwt-Token
项目码云:https://gitee.com/kewen-yang/back2.git1.SpringSecurity介绍:SpringSecurity是基于Spring生态圈的,用于提供安全访问控制解决方案的框架。SpringSecurity的安全管理有两个重要概念,分别是Authentication(认证)和Authorization(授权)。为了方便SpringBoot项目的安全管理,Spr
玛卡巴咖
·
2023-03-30 11:09
实战篇
Springboot
spring
boot
java
spring
博客作业第六周-企业级NoSQL数据库
redis-
持久化、集群与高可用
一、RDB和AOF的优缺点RDB模式优缺点优点:RDB快照保存了某个时间点的数据,可以通过脚本执行redis指令bgsave(非阻塞,后台执行)或者save(会阻塞写操作,不推荐)命令自定义时间点备份,可以保留多个备份,当出现问题可以恢复到不同时间点的版本,很适合备份,并且此文件格式也支持有不少第三方工具可以进行后续的数据分析比如:可以在最近的24小时内,每小时备份一次RDB文件,并且在每个月的每
~Ambition~
·
2023-03-30 10:22
linux运维
数据库
redis
linux
运维
centos
redis-
删除策略
Redis的数据特征Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态XX:具有时效性的数据-1:永久有效的数据-2:已经过期的数据或被删除的数据或未定义的数据一、删除策略:1、定时删除:创建一个定时器,当key设置有过期时间,且过期时间到达时,有定时器任务立即执行对键的删除操作优点:节约内存,到时就删,快速释放不必要的内存缺点:CPU压力大,无论CPU
chopin's pointer
·
2023-03-30 03:01
Redis
redis
redis-
持久化机制RDB和AOF
1、RDB快照方式在默认情况下,Redis将内存数据库快照保存在名字为dump.rdb的二进制文件中。在指定的时间间隔内将内存中的数据集快照写入磁盘。1.1设置RDB持久化(默认开启)你可以对Redis进行设置,让它在“N秒内数据集至少有M个改动”这一条件被满足时,自动保存一次数据集。比如说,以下设置会让Redis在满足“60秒内有至少有1000个键被改动”这一条件时,自动保存一次数据集:save
程序员老石
·
2023-03-29 23:13
Redis
redis
缓存
nosql
Redis-
持久化讲解
持久化Redis虽然是个内存数据库,但是Redis支持RDB和AOF两种持久化机制,将数据写往磁盘,可以有效地避免因进程退出造成的数据丢失问题,当下次重启时利用之前持久化的文件即可实现数据恢复。RDBRDB持久化是把当前进程数据生成快照保存到硬盘的过程。所谓内存快照,就是指内存中的数据在某一个时刻的状态记录。这就类似于照片,当你给朋友拍照时,一张照片就能把朋友一瞬间的形象完全记下来。RDB就是Re
小二上酒8
·
2023-03-29 22:25
redis
数据库
缓存
java
数据结构
redis高可用-主从加哨兵篇
/
redis-
君陌先生
·
2023-03-28 14:45
redis
Redis高可用
主从复制备份
哨兵
springboot
Redis-
布隆过滤器(Bloom Filter)详解
文章目录什么是布隆过滤器布隆过滤器的优点:布隆过滤器的缺点:其他问题布隆过滤器适合的场景布隆过滤器原理数据结构增加元素查询元素删除元素如何使用布隆过滤器Google开源的Guava自带布隆过滤器Redis实现布隆过滤器Redis中配置布隆过滤器Redis中布隆过滤器指令使用自定义参数基本操作Java集成Redis使用布隆过滤器pom中引入redisson依赖:编写代码测试什么是布隆过滤器布隆过滤器
养歌
·
2023-03-27 13:52
redis
redis
java
redis-
事件
redis服务器是一个事件驱动程序,服务器需要处理以下两类事件:文件事件:redis服务器通过套接字与客户端(或者其他redis服务器)进行连接,而文件事件就是服务器对套接字操作的抽象。服务器与客户端(或者其他redis服务器)的通信会产生相应的文件事件,而服务器通过监听并处理这些事件来完成一系列网络通信操作。时间事件:redis服务器中的一些操作(比如serverCron函数)需要在给定的时间点
黑金星
·
2023-03-26 22:02
Redis-
性能测试
/root/redis-5.0.0/src/redis-benchmark1、redis-benchmark-hlocalhost-p6379-c100-n100000100个并发连接,100000个请求,检测host为localhost端口为6379的redis服务器性能2、redis-benchmark-tset,lpush-n100000-q3、redis-benchmark-n100000
helan606
·
2023-03-26 07:01
php redis 扩展类常用操作(2)- string
三、Redis字符串相关操作1.设置指定key的值//成功返回true,失败时返回false$
redis-
>set('key','value');//等同于调用setex,设置key1的值为value1
行万里路GOGO
·
2023-03-24 11:09
php redis 扩展类常用操作(5) - set
集合中最大的成员数2的32次方-1个(每个集合可存储40多亿个成员)1.sAdd-向集合添加一个或多个成员//成功返回添加元素个数,失败时返回0$
redis-
>sAdd('set','v1','v2',
行万里路GOGO
·
2023-03-22 18:24
Redis-
数据结构-对象
对象redis没有直接使用SDS、链表、字典、压缩列表、整数集合等数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,包含字符串对象、列表对象、哈希对象、集合对象和有序集合对象这五种类型的对象。1、对象的类型与编码redis使用对象来表示数据库中的键和值,对象包含字符串(string)、列表(list)、哈希(hash)、集合(set)、有序集合(z-set)5中类型。当在redi
稻壳_be03
·
2023-03-22 13:46
Redis-
管道
Redis管道的使用原文介绍:http://redis.cn/topics/pipelining.htmlRedisPipelining客户端可以向服务器发送多个请求而无需等待回复,最后只需一步即可读取回复。RTT(RoundTripTime)往返时间。为什么需要通道Redis是使用client-server模型和Request/Response协议的TCP服务器.这意味着通常通过以下步骤完成请求
zzj0990
·
2023-03-18 21:29
redis的与mysql的同步
方案一:读:读
redis-
>没有,读mysql->把mysql数据写回redis写:写mysql->成功,写redis。
玄林
·
2023-03-18 16:56
Redis-
第九章节-动态字符串
目录概述SDS(动态字符串)SDS(动态字符串)与c语言字符串的区别1、概述String类型底层实现的简单动态字符串sds,是可以修改的字符串。它采用预分配冗余空间的方式来减少内存的频繁分配。2、SDS动态字符串image动态字符串是以\0为分隔符。最大容量是redis主动分配的一块内存空间,实际存储内容是具体的存的数据。3、SDS(动态字符串)与c语言字符串的区别1、获取存储长度不同c语言:c语
蜗牛ICU
·
2023-03-17 18:59
PHP操作Redis常用技巧总结
一、Redis连接与认证1//连接参数:ip、端口、连接超时时间,连接成功返回true,否则返回false2$ret=$
redis-
>connect('127.0.0.1',6379,30);3//密码认证
执笔轻叹_
·
2023-03-15 11:22
Flink编程参考
Flink消费Kafka数据并把实时计算的结果导入到
Redis-
小胜的IT空间-博客园https://www.cnblogs.com/jiashengmei/p/9084057.htmlFlink+kafka
行走的数据智能
·
2023-03-13 17:35
php实现令牌桶算法的限流器
先上代码connect('127.0.0.1',6379);$
redis-
>watch($key);$limitVal=$
redis-
>get($key);if($limitVal){$limitVal
twinkle8858
·
2023-03-13 08:19
Redis-
学习笔记----Bitmaps(简单概述)
BitmapsBitmaps是一种位图,用于位存储是操作二进制位来进行记录,只有01两个状态!例如365天=365bit1字节=8bit46个字节左右!测试使用bitmap来记录周一到周日的打卡周一:0周二:0周三:1周四:1查看某一天是否有打卡127.0.0.1:6379>getbitsign3(integer)1127.0.0.1:6379>getbitsign1(integer)0统计操作,
第六序列
·
2023-03-13 07:28
redis
学习
数据库
Redis-
第五章节-8种数据类型
目录一、Redis对key的操作二、五种数据类型String类型List(集合)Set(集合)Hash(哈希)Zset(有序集合)三、三种特殊数据类型geospatial(地理位置)hyperloglog(优点:占用内存小)Bitmap(位图)一、Redis对key的操作判断key是否存在:existskey_name设置key的过期时间:expirekey_name[过期的时间值](number
蜗牛ICU
·
2023-03-12 13:44
Redis-
数据库
数据库Redis服务器将所有数据库保存在redisServer结构的db数组中,db数组的每一项都是一个redisDb结构,代表一个数据库。1、结构redisServer初始化服务器时,程序会根据redisServer的dbnum属性来决定应创建多少个数据库,dbnum属性的值由服务器配置的database选项决定,默认情况下,该选项的值为16,所以redis服务器默认会创建16个数据库。redi
稻壳_be03
·
2023-03-12 06:55
redis-
主从同步
Redis-
主从同步CAP在分布式环境下(网络分区),一致性和可用性是互斥的.一致性和可用性是互斥的主从同步(从从同步)增量同步同步是指维护一个指令流,主节点自己维护一个buffer来维护修改状态的指令
zhangsanzhu
·
2023-03-12 05:54
Redis-
链表
Redis-
链表链表提供了高效的节点重排能力,以及顺序性的节点访问方式,并且可以通过增删节点来灵活的调整链表的长度。
gaobinzhan
·
2023-03-11 06:48
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他