04 2024 档案

摘要:AOP :Aspect Oriented Programming,即面向切面编程 是一种编程思想,是OOP(面相对象编程)的一个补充,实现对一类功能的集中处理,而不是在每个需要处理的地方进行直接的方法调用,常用于实现一些业务无关的功能(如事务控制、日志记录、安全控制、数据统计、异常处理等) Spri 阅读全文
posted @ 2024-04-23 14:29 坏男银 阅读(41) 评论(0) 推荐(0) 编辑
摘要:Java的线程有6个状态,分别是 State 状态 解释 时机 NEW 新建 新建出来的线程 执行Thread的start方法前 RUNNABLE 运行 可以细分为运行中和就绪,正在运行或者等待CPU调度。 执行Thread的start方法后。yield后。Object.notify、Object. 阅读全文
posted @ 2024-04-19 10:38 坏男银 阅读(57) 评论(0) 推荐(0) 编辑
摘要:MySQL 主要分为 Server 层和存储引擎层 Server 层:主要包括连接器、查询缓存、分析器、优化器、执行器等,所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图,函数等,还有一个通用的日志模块 binlog 日志模块。 存储引擎:主要负责数据的存储和读取,采用可以替换的插件式 阅读全文
posted @ 2024-04-17 09:50 坏男银 阅读(11) 评论(0) 推荐(0) 编辑
摘要:JIT优化 1.公告子表达式消除 如果一个表达式的出现多次,并且每次的参数值没有改变,那只需要计算一次,接下来的碰到这个表达式,都会直接取上一次计算的结果 如:int x = a*b+c+d*(a*b); // a*b是一个公共子表达式,计算了一遍以后,第二次的时候,这个子表达式的参数值都没有变化, 阅读全文
posted @ 2024-04-16 20:55 坏男银 阅读(50) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/zhxdick/article/details/125289970 我的启动脚本 path=`pwd`LOG_PATH=$path/logDUMP_PATH=$path/dump java -XX:+UnlockDiagnosticVMOptions -X 阅读全文
posted @ 2024-04-16 20:47 坏男银 阅读(262) 评论(0) 推荐(0) 编辑
摘要:打开网址 https://start.spring.io/ 选择版本依赖等信息 本机环境原先装了个jdk8,由于SpringBoot3最低支持jdk17,所以本机环境上又装了个jdk17 https://www.oracle.com/java/technologies/downloads/#java 阅读全文
posted @ 2024-04-16 20:45 坏男银 阅读(49) 评论(0) 推荐(0) 编辑
摘要:low一点的原因: 1. 非public方法 2. 异常被处理了(try catch) 3. bean没被Spring管理,比如没加Component注解 4. 数据库不支持(比如MyISAM) 高大上一点的原因: 5. 内部方法调用,可以注入本实例的代理类,通过代理类来调用 6. 抛出的是非Run 阅读全文
posted @ 2024-04-16 20:44 坏男银 阅读(589) 评论(0) 推荐(0) 编辑
摘要:标题其实不太准确,应该是MySQL的bin log,InnoDB的redo log和undo log 事务的四大特征: ACID, 其中原子性(A)、隔离性(I)和持久性(D)是手段, 一致性(C)是目标。 Atomicity 原子性 == 》由undo log实现 Consistency 一致性 阅读全文
posted @ 2024-04-16 20:42 坏男银 阅读(57) 评论(0) 推荐(0) 编辑
摘要:数据库CPU飙高 通过top等命令确定是否数据库进程CPU飙高 通过命令show processlist找出耗资源较大的SQL 如果没有特别耗资源的SQL,就查看session是不是突然增多,可以通过限制连接数 如果有特别耗资源的SQL,排查耗资源的SQL是否命中索引、是否表的数据量特别大 kill 阅读全文
posted @ 2024-04-15 21:34 坏男银 阅读(21) 评论(0) 推荐(0) 编辑
摘要:并发事务的控制方式是MVCC和行锁 按范围分:表级锁、页锁、行级锁(锁一行或者多行)(记录索、间隙锁、临键锁(可重复读默认用这个做行锁,除非是主键和唯一索引会使用记录索)) 按功能分:读锁(S)、写锁(X) 意向锁是表级锁,分为意向共享锁、意向排他锁,用于协调表锁和行锁的关系,事务想要在某些行上加共 阅读全文
posted @ 2024-04-15 16:34 坏男银 阅读(21) 评论(0) 推荐(0) 编辑
摘要:常见的sql题目 1. 查找不在表里的数据 2. 查找第N高的分数 3. 分组排序 4. 连续出现N类问题 5. 打卡表查某人当月连续最长出勤天数 1.有两个表A和B,以id关联,查找在A中但是不在B中的数据 方案a:使用left join select A.id from A left join 阅读全文
posted @ 2024-04-15 14:15 坏男银 阅读(67) 评论(0) 推荐(0) 编辑
摘要:先给个表结构 CREATE TABLE account ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', name varchar(255) DEFAULT NULL COMMENT '账户名', balance int(11) DEFAULT N 阅读全文
posted @ 2024-04-15 14:13 坏男银 阅读(3) 评论(0) 推荐(0) 编辑
摘要:当查询语句的偏移量特别大的时候,查询效率就会变的很差,比如limit 10 offset 100 和limit 10 offset 100000的效率肯定是不一样的,后者会慢的多 那怎么解决呢? 先模拟一个例子,表结构如下 CREATE TABLE account ( id int(11) NOT  阅读全文
posted @ 2024-04-15 13:37 坏男银 阅读(62) 评论(0) 推荐(0) 编辑
摘要:一般来说,要停止的线程,要么是在执行业务代码(比如while循环),要么在sleeping/waiting/joining 对于while循环,可以设置一个flag作为while的条件,想让线程停下来,就可以设置flag的值 static volatile boolean keepRun = tru 阅读全文
posted @ 2024-04-02 16:44 坏男银 阅读(29) 评论(0) 推荐(0) 编辑
摘要:synchronized 解释:java语言的一个关键字 作用:实现同步机制,控制多线程的访问,确保同一时刻只有一个线程可以进入临界区执行同步代码。 用法:加在代码块上、加在方法上、加在一个对象, 原理:不管是那种用法,都会有一个对象(指定的对象、class的实例对象、class对象),这个对象又会 阅读全文
posted @ 2024-04-02 16:13 坏男银 阅读(27) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示