摘要: 什么是tcmalloc TCMalloc(Thread-Caching Malloc,线程缓存的malloc)是Google开发的内存分配算法库,最初作为Google性能工具库 perftools 的一部分,提供高效的多线程内存管理实现,用于替代操作系统的内存分配相关的函数(malloc、free, 阅读全文
posted @ 2024-12-23 23:46 qunqingrihe 阅读(0) 评论(0) 推荐(0) 编辑
摘要: ## Offset管理 ### 1. **Offset 的定义** - **Offset** 表示某个消息在消息队列中的位置。通过 `Offset`,可以准确地找到该消息或者从这个位置开始继续消费消息。- **maxOffset** 表示消息队列中的最大偏移量,是最新消息的 `Offset + 1` 阅读全文
posted @ 2024-09-30 01:18 qunqingrihe 阅读(85) 评论(0) 推荐(0) 编辑
摘要: MESI 协议 MESI 协议其实是 CPU Cache 的有限状态机,一共有 4 个状态(MESI 就是状态的首字母): M(Modified,已修改): 表明 Cache 块被修改过,但未同步回内存; E(Exclusive,独占): 表明 Cache 块被当前核心独占,而其它核心的同一个 Ca 阅读全文
posted @ 2024-03-07 21:06 qunqingrihe 阅读(357) 评论(0) 推荐(1) 编辑
摘要: 在探讨分布式系统时,我们经常会提到CAP理论。CAP理论是分布式计算中的一个基本原则,它指出在一个分布式数据存储系统中,Consistency(一致性)、Availability(可用性)和Partition Tolerance(分区容错性)这三个特性无法同时被满足。 一、一致性(Consisten 阅读全文
posted @ 2024-02-15 23:18 qunqingrihe 阅读(82) 评论(0) 推荐(0) 编辑
摘要: Semaphore、Barrier、Latch都属于同步工具类 1、信号量(Semaphore) 描述 ​ 计数信号量用来控制同时访问某个特定资源的操作数量,或者同时执行某个制定操作的数量。还可以用来实现资源池。 场景 ​ 信号量就是一个计数器,所以应用很广泛。 例如:我们构建一个有界队列,在队列满 阅读全文
posted @ 2023-11-15 19:18 qunqingrihe 阅读(129) 评论(1) 推荐(0) 编辑