蜗牛大师

吴庆龙的学习笔记

导航

03 2021 档案

关于HashMap的一些思考
摘要:一、HashMap的负载因子的作用 当 HashMap 中的元素个数(包含链表、红黑树上的元素)达到数组长度的0.75倍的时候,开始扩容。 二、HashMap的负载因子为什么是0.75 主要是为了提高空间利用率和减少查询成本(也可以说是尽可能减少hash冲突)。 三、为什么槽位数必须使用2^n 如果 阅读全文

posted @ 2021-03-30 10:16 蜗牛大师 阅读(696) 评论(0) 推荐(0) 编辑

TLAB 是什么?
摘要:全称是 Thread Local Allocation Buffer,即线程本地分配缓存,是一个线程专用的内存分配区域。 一、Java对象的内存分配过程如何保证线程安全的? 因为堆是线程之间共享的,如果在并发场景中,两个线程先后把对象的引用指向了同一个内存区域,怎么办? 为了解决这个并发问题,对象的 阅读全文

posted @ 2021-03-26 16:56 蜗牛大师 阅读(2125) 评论(1) 推荐(1) 编辑

多版本并发控制(MVCC)
摘要:一、概念 Multi-Version Concurrency Control,即多版本并发控制,它可以保存一行记录的多个历史版本,这些历史版本信息保存在 system tablespaces 或 undo tablespaces 中,统一叫做 rollback segment。用这些信息来支持事物的 阅读全文

posted @ 2021-03-25 13:54 蜗牛大师 阅读(295) 评论(0) 推荐(0) 编辑

MySQL锁总结
摘要:有哪些锁?分别是什么时候的?什么时候会释放的?意义分别是什么? 什么时候会发生死锁?什么时候会进行死锁检测? 一、有哪些锁? Server层: FLUSH TABLE WITH READ LOCK / UNLOCK TABLES LOCK TABLES ... READ/WRITE / UNLOCK 阅读全文

posted @ 2021-03-23 13:57 蜗牛大师 阅读(256) 评论(0) 推荐(0) 编辑

Redis持久化的方式
摘要:分为: RDB持久化:二进制格式,save/bgsave 命令产生。 AOF持久化:客户端命令,追加写入,文件大。 一、RDB持久化 1、什么是RDB持久化 英文名称是 Redis DataBase,它还有一个常用的名字:快照持久化。所谓快照,在这里指的是某一时刻的内存数据,而持久化则是将这一时刻的 阅读全文

posted @ 2021-03-01 15:27 蜗牛大师 阅读(136) 评论(0) 推荐(0) 编辑