- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 ceph源码分析--onode lru
onode是bluestore中的元数据形式,由于bluestore直接写裸盘,因此需要onode来管理对象。本文就讲讲onode的缓存算法。在bluestore的cache中存在着lru和twoq两种,但是关于onode元数据的cache采用的都是lru算法。1.lru上已有元素在访问到时怎么到队首?这部分得从get_onode讲起,在其中调用了BlueStore::Onod...
2018-04-29 00:53:44 1799
原创 ceph源码分析--一个entry函数的调用
ceph中有很多的entry函数,往往是由各线程来调用处理的,本篇文章以bluestore中的MempoolThread为例来讲讲该函数的调用。 struct MempoolThread : public Thread { BlueStore *store; Cond cond; Mutex lock; bool stop = false; public:...
2018-04-16 01:10:04 834
原创 ceph源码分析--isa-l计算校验块的一个小优化
本次来聊一聊isa-l,即ceph的纠删码插件之一。当然这个值曾经默认是jerasure。 关于纠删码的原理其实就像是线性代数中解线性方程组。这部分就不赘述。本次重点关注isa-l中的两个函数。本次主要关心的问题: 在已经知道旧的校验块后和旧的数据块和修改后的数据块后怎么快速得到新的校验块。首先isa-l库是可以独立单独运行的,首先从 https://github.com/ceph/...
2018-04-15 22:15:19 2846 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人