- 博客(7)
- 问答 (1)
- 收藏
- 关注
原创 redis性能的排查
关于 redis 性能的排查 我首先能想到的方面是 以下几个 (可以类比数据库sql变慢的原因):redis 在大部分情况下都会使用单线程来完成指令操作,那么在一些命令中会导致变慢,他会阻塞其他指令 比如key * (改用 SCAN)redis 作为一个内存数据库,那么如果数据都在内存中可以获得,那么速度是很快的,但是如果涉及到要到磁盘去进行读取 速度就很很慢。查看慢日志 查看慢的那些命令1. 进行排查,是否redis是否真的慢了在服务内部集成链路追踪,查看对应方法在调用redis 服务时是否
2021-06-23 20:04:51 272
原创 二分查找详解
历程一开始业务量小的数据,单体应用直接去操纵数据库进行读写的操作,就可以完成操作,相对简单。在后期,业务量的增长,导致数据库查询耗时较大,在这时候使用redis等分布式缓存,来提高效率。随着数据量不断增大,导致分布式缓存压力过大,所以在分布式缓存中,可以在添加一层本地缓存来减少分布式缓存的压力。数据量还在不断增大,为了避免继续出现问题,需要使用CPU缓存来继续提高应用的缓存能力不同阶段出现的问题使用分布式缓存使用分布式缓存确实提高了应用的能力,但是架构变得复杂了,也会带来喝多问题数据一致
2021-06-10 17:07:35 132
原创 回溯算法概览
在leetCode 中涉及到回溯的题目中 有以下几个基本题目,39.组合总和40. 组合总和 II46. 全排列47. 全排列 II77.组合78. 子集90. 子集 II通过这些题目,我们可以容易的整理出回溯的基本模版46.全排列问题是这样的 :给定一个 没有重复数字的序列,返回其所有可能的全排列。整体的回溯树如下图所示:当前在红色节点上,我们选择的列表有1,3。由于2在后面,2将无法选择。那么就便变成了树的遍历代码如下:class Solution { List&l
2021-04-30 14:28:59 135
原创 Spring事务源码阅读(一)
Spring事务注解一:@EnableTransactionManagement@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Import(TransactionManagementConfigurationSelector.class)public @interface EnableTransactionManagement { /** 是否使用cglib代理 默认是jdk代理 这个参数 也会
2021-04-18 15:00:45 102
原创 AOP结合redis实现自动存取
Redis自定义注解@RedisSimpleCache注解的作用在使用过程中,不需要进行Redis中是否有数据的判断,就如同正常的查询数据库一般,当内容在数据库中不存在的情况下,会执行代码,在得到结果之后,再将数据存储中Redis中注解的实现使用Aop的技术,在方法中执行前查询数据,发现数据没有存在于数据库中,执行方法后,将数据存储中Redis的具体的实现步骤AOP拦截注解过的方法后,先去校验中key是否存在,存在的话,执行后续方法,判断方法返回的类型,来确定序列化以及反序列化的规则将Re
2021-03-30 22:48:46 199
原创 redis Sentinel 部署以及spring boot集成
Sentinelsentinel(哨兵) 是一种redis的解决方案,可以由多个Sentinel实例组成的Sentinel系统可以监视多个主服务器,以及这些主服务器之下的从服务器,同时如果主服务器下线之后,就会通过推举将从服务器升级为主服务器。这里不推荐在一个机器上使用docker来搭建一个redis Sentinel系统,只要是考虑到使用docker之后,之后集成到spring boot之后,sentinel得到了一个内网地址,spring boot无法连接redis 主从修改主配置文件po
2021-03-22 08:05:54 882
原创 跳表
结论跳表是一个二维的链表,通过牺牲一部分空间来换取比链表更快的速度。从链表开始链表在查找数据的时候,我们需要从头往后进行遍历,时间复杂度为O(n),如果我们为了提高链表在查找时候的效率引入了跳表的结构,就是构建了一个二维的链表。我们通过将提取一条有序的链表上的若干个节点,在其之上构建出了一层新的链表,通过先检索上层的链表来一步步的缩小范围,直到最后确定位置。跳表的遍历拿上图举例, 假设我们需要找到数据 8,那么遍历的步骤如下从L2的第一个节点出发,找到该条链表中小于等于数据8的最大值,也就
2021-03-10 14:22:42 553
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人