自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 MYSQL-InnoDB引擎

当业务在进行操作的时候,会先操作缓冲区,如果缓冲区中没有数据的话,会在磁盘中取出加载数据存储在缓冲区,增删改查都会通过缓冲区,并通过一定的频率来刷新到磁盘中达到持久化。

2025-02-25 22:59:20 364

原创 三分钟理解可达性分析算法 - 死亡对象的判断算法

可达性分析算法通过从根对象开始遍历对象图,标记所有可达的对象。未被标记的对象被认为是“不可达”的,即垃圾对象,可以被回收。如果一个对象无法通过任何引用链从根对象访问到,那么它就是不可达的,可以被回收。

2025-02-24 22:21:14 244

原创 Redis的数据结构及其使用场景

String是Redis最基本的数据结构,可以存储任意类型的数据,如文本、数字、二进制数据(如图片、音频、视频)等。:Hash是键值对的集合,适合存储对象。:Sorted Set类似于Set,但每个成员都关联了一个分数(score),根据分数对成员进行排序。:Set是一个无序且元素唯一的集合,支持集合内的增删改查操作,以及多个集合间的交集、并集、差集运算。:List是一个有序的字符串集合,支持从列表两端插入和删除元素,类似于队列或栈。

2025-02-24 21:56:04 298

原创 对于ThreadLocal的理解以及常见问题

是 Java 提供的一个工具类,用于实现线程本地存储。它为每个线程提供了一个独立的变量副本,使得每个线程都可以独立地操作自己的变量,而不会影响其他线程的变量。: 什么是threadlocal?的底层是如何实现的?

2025-02-24 21:54:32 119

原创 MYSQL-锁

看有没有其他兼容的锁,不兼容则等待释放,可以在加行锁时加一个意向锁,这样,每次加表锁时先检查意向锁是否存在,兼容,不用扫描整个表。InnoDB的数据是基于索引组织的,行锁是通过对索引上的索引项加锁来实现的,而不是对记录加的锁。为了避免DML在执行时,加的行锁与表锁的冲突,在InnoDB中引入了意向锁,使得表锁不用检查每行数据是否加锁,使用意向锁来减。行级锁,每次操作锁住对应的行数据。select操作是共享锁,此时只有设置共享锁的语句可以兼容,而其他INSERT等操作为排它锁,所有操作都不能执行。

2025-02-24 21:51:31 1438

原创 MYSQL-SQL优化

InnoDB的行锁是针对索引加的锁,不是针对记录加的锁,并且该索引不能失效,否则会从行锁升级为表锁。(如果update的内容没有索引,那么会加上表锁,而update一个加了索引的列,会加上行锁)当页中删除的记录达到MERGE_THRESHOLD ( 默认为页的50%),InnoDB会开始寻找最靠近的页(前或后)看看是否可以将两个页合并以优化空间使用。生序排序,此时用的索引。如果一次性需要插入大批量数据,使用insert语句插入性能较低,此时可以使用MySQL数据库提供的load指令进行插入。

2025-02-24 19:25:20 1205

原创 MYSQL-索引

当字段类型为字符串(varchar, text等)时,有时候需要索引很长的字符串,这会让索引变得很大,查询时,浪费大量的磁盘IO,影响查询效率。相对于Hash索引,B+tree支持范围匹配以及排序操作,而Hash索引只能用于对等比较(=,in),不支持范围查询(between,>,……可以根据索引的选择性来决定,而选择性是指不重复的索引值(基数)和数据表的记录总数的比值,索引选择性越高则查询效率越高,唯一索引的选择性是1,这是最好的索引选择性,性能也是最好的。如果是头部模糊匹配,索引失效(百分号)。

2025-02-24 19:23:37 607

原创 MYSQL-事务

set @@autocommit = 0为手动提交,在最后用"commit"来手动提交事务,想要回滚事务,用 “rollback”(一个数据库下不同表,是可以使用不同的存储引擎的)幻读:一个事务按照条件查询数据时,没有对应的数据行,但是在插入数据时,又发现这行数据已经存在,好像出现了。不可重复读:一个事务先后读取同一条记录,但两次读取的数据不同,称之为不可重复读,:事务一旦提交或回滚,它对数据库中的数据的改变就是永久的,会持久化存到磁盘中。,innoDB引擎的每张表都会对应这样一个表空间文件,存储该表的。

2025-02-24 19:22:00 1762

原创 乐尚代驾-使用GEO搜索附近合适的司机

【代码】乐尚代驾-使用GEO搜索附近合适的司机。

2025-02-24 18:47:46 107

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除