11 2024 档案

摘要:AtomicHashMap github 仓库:https://github.com/facebook/folly/tree/main/folly 文档:https://github.com/facebook/folly/blob/main/folly/docs/AtomicHashMap.md 本 阅读全文
posted @ 2024-11-28 22:20 如果的事 阅读(183) 评论(0) 推荐(0)
摘要:Raft算法 在了解Raft之前,我们先了解一致性(Consensus)这个概念,它是指多个服务器在状态达成一致,但是在一个分布式系统中,因为各种意外可能,有的服务器可能会崩溃或变得不可靠,它就不能和其他服务器达成一致状态。这样就需要一种Consensus协议,一致性协议是为了确保容错性,也就是即使 阅读全文
posted @ 2024-11-25 21:15 如果的事 阅读(644) 评论(0) 推荐(0)
摘要:无锁队列的实现 无锁队列的实现原理一般是利用 Retry-loop 和 CAS 等原子操作。 现在几乎所有的CPU指令都支持CAS的原子操作,X86下对应的是 CMPXCHG 汇编指令。 例如 CAS(Compare And Swap)的实现原理: bool compare_and_swap (in 阅读全文
posted @ 2024-11-13 16:49 如果的事 阅读(609) 评论(0) 推荐(0)
摘要:Roaring Bitmap 原理 Roaring Bitmaps 就是一种压缩位图索引,后文统称 RBM,RBM 的用途和 Bitmap 很差不多(比如说索引),只是说从性能、空间利用率各方面更优秀了。 RBM 的主要思想并不复杂,简单来讲,有如下三条: 我们将 32-bit 的范围 ([0, n 阅读全文
posted @ 2024-11-05 18:00 如果的事 阅读(356) 评论(0) 推荐(0)