上一页 1 ··· 6 7 8 9 10 11 12 下一页
摘要: 思路 是否存在周期波动(如果是云数据库,控制台能看到),如果是,分析高峰,适当加缓存 加了缓存仍没有解决问题,开启慢查询,并使用 EXPLAIN 分析慢 sql 索引情况,也可通过 profile 查看每个步骤时间成本 分析结果如果是等待时间长,对数据库参数进行调优(连接池等) 分析结果如果是 sq 阅读全文
posted @ 2023-05-17 15:38 CyrusHuang 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 表锁:InnoDB 支持行锁,不代表着就不支持表锁 表锁的 S 和 X 锁,MyISAM 的锁(不建议在 InnoDB 中使用) -- 查看当前有表锁的表 show open tables where in_use > 0; -- 给表加 S 锁(所有事务都能读,所有事务都不能写) lock tab 阅读全文
posted @ 2023-05-17 15:33 CyrusHuang 阅读(19) 评论(0) 推荐(0) 编辑
摘要: ACID Atomicity:原子性(UNDO LOG实现),一组操作要么都成功,要么都失败 Consistency:一致性(UNDO LOG实现),从一个合法状态变为另一个合法状态(语义上不是语法上)。比如转账之后余额为负数,虽然也能守恒,但是明显不合法。或者转账时A账户钱少了,B账户钱没多,也是 阅读全文
posted @ 2023-05-17 15:28 CyrusHuang 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 内存和磁盘每次交互都是完整的页,数据页里面存放的是行(不仅仅是数据库的数据行,还有行格式等) 页(16k,计算机与内存的最小单位)的上层单位还有区(一个区存放64个页,64*16k = 1024k,刚好 1M),区上面是段(一个或多个区组成),段上面是表空间(一个或多个段组成) 行格式 show t 阅读全文
posted @ 2023-05-17 14:59 CyrusHuang 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 存储引擎 |引擎|特性|文件| |--|--|--| |InnoDB|默认,支持事务,支持外键,支持行锁和表锁|.frm 文件存储表结构.ibd 文件存储数据和索引| |MyISAM|不支持事务,不支持外键,只支持表锁不支持行锁专门维护了一个常量保存每个表的总记录数(count 很快)MyISAM 阅读全文
posted @ 2023-05-17 13:48 CyrusHuang 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 数据定义语言分类 | 类型 | 解释 | 备注 | | | | | | DDL | 数据定义语言 | 创建修改库、表、视图、索引、约束等CREATE、DROP、ALTER 等 | | DML | 数据操作语言 | 数据行的增删改INSERT 、 DELETE 、 UPDATE 等 | | DQL | 阅读全文
posted @ 2023-05-17 11:01 CyrusHuang 阅读(15) 评论(0) 推荐(0) 编辑
摘要: ### 总结 | 收集器 | 工作方式 | 描述 | 回收区域 | 算法 | 特点 | | | | | | | | | Serial | 串行 | 工作线程暂停,一个线程进行垃圾回收 | 新生代 | 标记-复制 | | | Serial Old | 串行 | 工作线程暂停,一个线程进行垃圾回收 | 阅读全文
posted @ 2023-04-14 16:12 CyrusHuang 阅读(80) 评论(0) 推荐(0) 编辑
摘要: ### 标记-清除 把非垃圾对象进行标记,把未标记的进行清除。这是最基础的算法,别的算法都是基于此不断改进 不足的地方 + 效率不高(要看跟谁比,比如标记-复制就要快些) + 内存碎片:会产生大量不连续的内存碎片,导致可能无法给大对象分配内存 ### 标记-整理 还是要先标记哪些对象是垃圾,标记了先 阅读全文
posted @ 2023-04-14 15:01 CyrusHuang 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 共分为4种,强弱软徐 ### 强引用 直接使用 new 创建的对象。当触发 GC 时,只要是垃圾就回收 ### 软引用 当触发 GC 时,与是否是垃圾对象无关,意味着不管是不是垃圾对象都不会被回收,只有当内存不足时才回收(内存缓存场景) ```java Object obj = new Object 阅读全文
posted @ 2023-04-14 14:01 CyrusHuang 阅读(9) 评论(0) 推荐(0) 编辑
摘要: ### 引用计数法 > 给对象添加一个引用计数器,当对象增加一个引用时计数器加 1,引用失效时计数器减 1。引用计数为 0 的对象就是垃圾可被回收 比如 a 线程中某个栈帧使用某个对象,这个对象的引用计数器+1,调用结束,引用计数器-1 这个方法实现简单,效率高,但是并不可取,当循环引用时,引用计数 阅读全文
posted @ 2023-04-14 13:38 CyrusHuang 阅读(20) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 下一页