摘要: java线程池 一、线程池的7个核心参数 1. corePoolSize 核心线程数 corePoolSize 是线程池中保持活动状态的最小线程数。 即使线程是空闲的,它们也会一直保持在池中。 当有新任务提交时,线程池会优先创建核心线程来处理任务。 2. maximumPoolSize 最大线程数 阅读全文
posted @ 2024-04-24 10:15 欢乐豆123 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 树堆(Treap) 在某些极端情况下,二叉查找树有可能退化为链表,所以前辈们想尽了各种优化策略,这就涉及到二叉树的自平衡。二叉树的自平衡方式有多种,如红黑树、AVL等,包括今天要讲的树堆(Treap)。 一、树堆的特性和原理 树堆是一种随机化平衡二叉搜索树,结合了二叉堆和二叉查找树的特性(Treap 阅读全文
posted @ 2024-04-21 11:43 欢乐豆123 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 什么是一致性哈希 概要 一致性哈希是一种用于分布式系统中数据分片和负载均衡的算法。 它是现代分布式系统最常用的算法,它能让数据节点增减变化时,尽可能地保持原来在某个节点上的数据仍然还在那个节点上。 一、背景 1. 负载均衡 在具体介绍一致性哈希算法之前,先问一个问题:为什么需要一致性哈希算法?下面我 阅读全文
posted @ 2024-04-06 22:21 欢乐豆123 阅读(5) 评论(0) 推荐(0) 编辑
摘要: MySQL中的MVCC实现机制 一、什么是MVCC? MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种无锁的并发控制方法,一般在数据库管理系统中,用于实现对数据库的并发访问。 我们知道,在数据库中,对数据的操作主要有2中,分别是读和写 阅读全文
posted @ 2024-03-25 15:05 欢乐豆123 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 配置动态刷新@RefreshScope引起的取值为null 在Spring Cloud Config 动态刷新demo编写中,分为三个步骤: 1)git端配置更改,代码提交 2)手动刷新配置: POST请求: http://localhost:3355/actuator/refresh 3)客户端访 阅读全文
posted @ 2024-03-23 21:49 欢乐豆123 阅读(25) 评论(0) 推荐(0) 编辑
摘要: Redis zset 底层结构 概要 在 Redis 的五种主要数据类型中,zset(有序集合)类型可能是最复杂,但也是最强大的一种。zset 不仅可以存储键值对,还可以为每个元素分配一个分数,然后根据这个分数进行排序。这使得 Zset 非常适合用于实现排行榜、时间线等功能。 一、Zset底层结构 阅读全文
posted @ 2024-03-15 09:55 欢乐豆123 阅读(69) 评论(0) 推荐(0) 编辑
摘要: Java并发编程之CAS原理分析 背景 在高并发的业务场景下,我们经常需要处理多线程对共享资源的访问和修改。这个时候就可能会导致并发安全问题比如竟态条件(Race Condition)等。因此,线程安全问题是必须考虑的,在JDK5之前,可以通过synchronized或Lock来保证同步,从而达到线 阅读全文
posted @ 2024-03-09 18:17 欢乐豆123 阅读(7) 评论(0) 推荐(0) 编辑
摘要: ConcurrentHashMap的介绍 一、HashMap线程安全 我们知道,在并发情况下,使用HashMap会有线程安全的问题,那么如何避免呢? 想要避免Hashmap的线程安全问题有很多办法,比如改用HashTable或者Collections.synchronizedMap 但是,这两者有着 阅读全文
posted @ 2024-03-07 17:23 欢乐豆123 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 散列表 概要 散列表也叫哈希表(hash table),是存储Key-Value映射的集合。对于某一个Key,散列表可以在接近O(1)的时间内进行读写操作。 散列表在本质上也是一个数组,可以根据下标,进行元素的随机访问。 散列表通过哈希函数实现Key和数组下标的转换,每个键值对都会通过哈希函数计算出 阅读全文
posted @ 2024-03-06 20:32 欢乐豆123 阅读(2) 评论(0) 推荐(0) 编辑
摘要: java Object类 概要 java.lang.Object类是Java当中所有类的基类,即所有类的父类,它里面描述的所有方法,子类都可以使用。在对象实例化的时候,最终找的父类就是Object。 Object包含了9大常用方法: getClass()、 hashcode()、 toString( 阅读全文
posted @ 2024-03-04 11:56 欢乐豆123 阅读(6) 评论(0) 推荐(0) 编辑