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