Redis数据库
文章平均质量分 76
在学习Redis数据库过程中的笔记
Lavender-csdn
这个作者很懒,什么都没留下…
展开
-
并发数据一致性解决方案
乐观锁、悲观锁、分布式锁乐观锁从数据库层面来看,就是在表中加入一个版本号字段version,这样每次修改数据的时候,都需要比较版本号。从代码层面讲:从乐观锁的层面讲,也能解决超卖、数据不一致的问题。缺点:不适用高并发场景,会导致失败率很高,锁冲突比较大,影响用户体验,前端处理那边只能不断重试。可以设置乐观锁冲突的最大重试次数,减少一些无用访问。悲观锁假设现在有5个请求对共享资源进行访问,首先T1过来,对该资源加锁,一直到事务提交之后才会释放锁,如果当前是一个长事务,那原创 2021-03-27 11:05:17 · 423 阅读 · 0 评论 -
Redisson实现Redis分布式锁以及Redlock分布式锁
首先看一段模拟扣减库存的代码:import lombok.extern.slf4j.Slf4j;import org.redisson.Redisson;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.StringRedisTemplate;import org.springframework.web.bind.annotation.原创 2021-03-18 17:28:08 · 834 阅读 · 0 评论 -
IO那些事儿(BIO、NIO、AIO、多路复用、select、poll、epoll)
这篇文章真没想着怎么怎么深入这些概念,只能说尽可能自己在学习的过程中说清楚,加深理解和印象,毕竟基本上全是操作系统底层的原理,现在更多对本科学的操作系统的印象停留在:虚拟存储、页面置换算法这些东西。说实话,底层的东西觉得难,学起来吃力、忘得也就快了。IO简单一点,就是对输入数据和输出数据的处理,读写数据。BIO同步阻塞。基于线程的驱动模型。BIO最重要的是理解"B"是什么,blocking,阻塞的意思,直接看一段代码,这段代码是网络编程服务器端的一段代码。总体大意就是服务器端与客户端要连接,原创 2021-03-14 17:18:07 · 391 阅读 · 1 评论 -
企业级解决方案
缓存预热问题“宕机”,服务器启动后迅速宕机问题排查请求数量较高 主从之间数据吞吐量较大,数据同步操作频度较高解决方案前置准备工作1、日常例行统计数据访问记录,统计访问频度较高的热点数据2、利用LRU数据删除策略,构建数据留存队列准备工作:3、将统计结构中的数据分类,根据级别,redis有点加载级别比较高的热点数据4、利用分布式多服务器同时进行数据读取,提速数据加载过程实施:1、使用脚本程序固定触发数据预热过程2、如果条件允许,使用了CDN(内容分发网络原创 2021-02-21 21:12:18 · 283 阅读 · 0 评论 -
Redis如何删除过期数据
Redis的删除策略:定时删除,惰性删除,定期删除,这些删除策略仅仅对于有时效性的数据Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态带有时效性的数据存储结构:定时删除创建一个定时器,当key设置有过期时间,并且过期时间到达的时候,由定时器任务立即执行对键的删除操作优点:节约内存,到时就删,快速释放掉不必要的内存占用缺点:CPU压力很大,无论CPU此时负载量多高,均会占用CPU,会影响redis服务器响应时间和指令吞吐量.原创 2021-02-21 16:34:15 · 1488 阅读 · 0 评论 -
Redis事务处理
Redis事务Redis事务就是一个命令执行的队列,将一系列预定义命令包装成为一个整体,当执行的时候,一次性按照添加顺序依次执行后,中间不会被打断或者干扰事务的基本操作开启事务:multi,设定事务的开始位置,此指令执行后,后续的所有指令均加入到事务中执行事务:exec,指定事务的结束位置,同时执行事务,与multi成对出现,成对使用注意:加入事务的命令暂时进入到任务队列中,并没有立即执行,只有执行exec命令才会开始执行事务定义的过程出现了问题,怎么办???取消事务:disca原创 2021-02-21 15:04:53 · 228 阅读 · 0 评论 -
Redis的持久化---RDB和AOF
Redis持久化意外的断电自动备份:什么是持久化:利用永久性存储介质将数据进行保存,在特定的时间将保存的数据进行恢复的工作机制称为持久化为什么要持久化:防止数据的意外丢失,确保数据安全性持久化过程保存什么?? 数据1、将当前数据状态进行保存,快照形式,存储数据结果,存储格式简单,关注点在数据2、将数据的操作过程进行保存,日志形式,存储操作过程,存储格式复杂,关注点在数据的操作过程Redis持久化---RDB1、RDB启动方式save命令:手动执行一..原创 2021-02-21 14:47:58 · 101 阅读 · 0 评论 -
Redis的数据类型详解及其应用场景
Redis数据类型string、hash、list、set、sorted_setRedis数据存储格式:redis自身是一个Map,其中所有的数据都是采用key:value的形式存储String类型数据基本操作:set,msetString类型数据的扩展操作1、设置数值数据增加执行范围incr key incby key increment incrbyfloat key increment2、设置数值数据减少指定范围decr key decrbt key .原创 2021-02-21 11:39:50 · 245 阅读 · 0 评论 -
Redis的初始介绍
Redis简介Redis(Remote Dictionary Server 远程字典服务器)是用C语言开发的一个开源的高性能键值对(key-value)数据库Redis特征数据之间没有必然的联系 内部采用单线程机制进行工作 高性能,官方提供测试数据,50个并发执行100000请求,读的速度是110000次/s,写的速度是81000次/s 多数据类型支持 字符串型 string 列表类型 list 散列类型 hash 集合类型 set 有序集合类型...原创 2021-02-21 10:09:15 · 80 阅读 · 0 评论