zoukankan      html  css  js  c++  java
  • 简述 Memcached 内存管理机制原理?

    早期的 Memcached 内存管理方式是通过 malloc 的分配的内存,使用完后通过

    free 来回收内存,这种方式容易产生内存碎片,并降低操作系统对内存的管理效

    率。加重操作系统内存管理器的负担,最坏的情况下,会导致操作系统比

    memcached 进程本身还慢,为了解决这个问题,Slab Allocation 内存分配机制

    就延生了。

    现在 Memcached 利用 Slab Allocation 机制来分配和管理内存。

    Slab

    Allocation 机制原理是按照预先规定的大小,将分配给 memcached 的内存分割

    成特定长度的内存块(chunk),再把尺寸相同的内存块,分成组

    chunks slab class),这些内存块不会释放,可以重复利用。

    而且,slab allocator 还有重复使用已分配的内存的目的。 也就是说,分配到的

    内存不会释放,而是重复利用。

    Slab Allocation 的主要术语

    Page

    分配给 Slab 的内存空间,默认是 1MB。分配给 Slab 之后根据 slab 的大小切分成

    chunk。

    Chunk

    用于缓存记录的内存空间。

    SlabClass

    特定大小的 chunk 的组。

  • 相关阅读:
    python字典类型
    python集合类型
    python元组类型
    python列表类型
    Python中的序列操作
    python字符串格式化输出
    python可变对象和不可变对象的解释
    Python数值类型
    Python循环结构用法
    python if条件判断语句
  • 原文地址:https://www.cnblogs.com/programb/p/13020716.html
Copyright © 2011-2022 走看看