- 博客(11)
- 收藏
- 关注
转载 CannotAcquireLockException
并发请求 + 事务嵌套 + 更新数据 = 死锁今有幸为同事排查死锁问题。问题描述:一个get接口,内依据参数执行select ... for update,未考虑并发场景,导致程序死锁,且只要并发请求该接口,几乎百发百中。问题定位: 1.检测数据库死锁情况,结果无。 2.接口内无相关共享资源,不会死锁 3.由于从事许久事务方面工作,所以想到了事务传播机制,果不出所料,其配置文件中get*接口配置的传播机制是SUPPORTS,故判断应该是事务嵌套死锁。问题解释:A请求开启新事
2022-01-05 16:54:09
1205
原创 MongoDB聚合操作 $group
$group进行分布查询操作 类似于在MySQL中的group by,但可以操作的内容更多虽然使用 $group 操作可以很方便的处理数据,但是需要注意的是,所以的分组数据是无序的,并且都是在内存中操作完成,所有操作的时候,不能支持大数据量。官方文档: $group (aggregation) — MongoDB Manual语法为{ $group: { _id: <expression>, <field1>: { <accumulator1> : ..
2021-12-18 11:28:17
1252
原创 MongoDB基本操作
相关概念MongoDB是非关系型数据库当中最像关系型数据库的,所以我们通过它与关系型数据库的对比,来了解下它的概念。MySQL MongoDB database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 column field 数据库字段/域 index index 索引 primary key _id 主键/M
2021-12-17 17:34:09
574
原创 explain详解
Explain详解使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈在select语句之前增加explain关键字,MySQL会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL注意:如果from中包含子查询,仍会执行该子查询,将结果放入临时表中 id select_type 查询类型(简单 复杂 子查询) table 查询的哪一张表 partitions type possible_
2021-10-27 18:00:52
135
原创 MySQL索引
Mysql索引索引是帮助mysql高效获取数据的排好序的数据结构 每新建一个索引 就会在对应的文件中 新生成一个树结构 索引数据结构 二叉树 红黑树 hash表 B Tree 二叉树如果顺序存储数据会形成一个链表 同全表扫描没有什么区别 所以没有选择二叉树红黑树红黑树存在的问题: 树的高度太高 如果数据量过大 从根节点找到叶子节点需要多次寻找B树...
2021-10-27 14:01:31
148
转载 @RabbitListener注解
I. 配置首先创建一个 SpringBoot 项目,用于后续的演示springboot 版本为2.2.1.RELEASE rabbitmq 版本为3.7.5依赖配置文件 pom.xml<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <ve..
2021-10-18 21:02:54
34749
5
原创 SentinelResource 注解
@SentinelResource 注解注意:注解方式埋点不支持 private 方法。@SentinelResource 用于定义资源,并提供可选的异常处理和 fallback 配置项。 @SentinelResource 注解包含以下属性: value:资源名称,必需项(不能为空) entryType:entry 类型,可选项(默认为 EntryType.OUT) blockHandler / blockHandlerClass: blockHandler 对应处理
2021-09-17 13:52:24
139
原创 spring-ioc
三层结构的耦合性问 存在的问题 各层级接口问题,使用依赖倒置原则解决 对象创建使用构造器,如果构造器发生改变,所有使用到的地方都要修改,使用工厂模式解决 尽量减少导包操作,使用反射创建对象 尽量减少字符串硬编码问题,使用配置文件存储对应的字符串 通过工厂模式获取对象public class MyApplicationContext { public Object getBean(String beanName){...
2021-08-17 01:51:13
60
原创 spring-aop的入门案例
AOP名词解释 名词解释 名词 解释 连接点 JoinPoint , 被代理类中所有方法 切入点 Pointcut , 被代理类中具有共性功能的方法 通知 Advice,将共性功能独立抽取成的方法 切面 Aspect,通知和切入点的位置关系 目标对象类 包含切入点的类 通知类 包含通知的类 织入 将通知和切入点放到一起并执行 AOP原理环境搭建 需求 完成用户记录的增
2021-08-03 14:40:27
135
原创 Spring-AOP
概述AOP关注的是程序中的共性功能,开发时,将共性功能抽取出来制作成独立的功能模块,此 时原始功能中将不具有这些被抽取出的共性功能代码。在被抽取的共性功能的模块运行时 候,将共性功能模块也运行,即可完成原始的功能。作用 在不修改源代码的情况下,对原方法进行增强AOP的原理 装饰模式 动态代理动态代理 jdk自带的proxy//loader : 被代理类(被增强类)的类加载器//interfa...
2021-08-03 14:23:01
71
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人