Facebook e khothalelitse mokhoa o mocha oa taolo ea memori ea slab bakeng sa Linux kernel

Roman Gushchin (Roman Gushchin) ho tsoa ho Facebook e hatisitsoeng lethathamong la poso la baetsi ba kernel ba Linux sete ea li-patches tse nang le ts'ebetsong ea taolo e ncha ea kabo ea memori. letlapa (taolo ea memori ea slab). Molaoli e mocha o hlokomeleha ka ho tsamaisa litlaleho tsa slab ho tloha boemong ba leqephe la memori ho ea boemong ba ntho ea kernel, e leng se etsang hore ho khonehe ho arolelana maqephe a slab ka lihlopha tse fapaneng, ho e-na le ho fana ka li-cache tsa slab tse arohaneng bakeng sa sehlopha ka seng.

Mokhoa o reriloeng o etsa hore ho khonehe ho eketsa bokhoni ba ho sebelisa slab, ho fokotsa boholo ba mohopolo o sebelisoang bakeng sa slab ka 30-45%, le ho fokotsa haholo tšebeliso ea mohopolo oa kernel. Ka ho fokotsa palo ea li-slabs tse sa sisinyeheng, ho boetse ho na le phello e ntle ho fokotsa ho arohana ha mohopolo. Taolo e ncha ea memori e nolofatsa khoutu bakeng sa li-accounting bakeng sa li-slabs mme ha e hloke tšebeliso ea li-algorithms tse rarahaneng bakeng sa ho theha le ho hlakola li-cache tsa slab bakeng sa sehlopha ka seng. Lihlopha tsohle tsa memori ts'ebetsong e ncha li sebelisa sete e tloaelehileng ea li-cache tsa slab, 'me bophelo bohle ba li-cache tsa slab ha bo sa tlamelloa bophelong bohle ba ba kentsoeng ka sehlopha. lithibelo ka tšebeliso ea memori.

Tlaleho e nepahetseng ea lisebelisoa e kentsoeng ho molaoli e mocha oa slab e lokela ho laela CPU haholoanyane, empa ka ts'ebetso liphapang li ile tsa fetoha tse sa reng letho. Haholo-holo, molaoli e mocha oa slab o sebelisitsoe likhoeli tse 'maloa ho hlahisa li-server tsa Facebook tse sebetsanang le mefuta e sa tšoaneng ea mosebetsi,' me ha ho na liphetoho tse hlokomelehang tse seng li tsejoa. Ka nako e ts'oanang, ho na le phokotso e kholo ea tšebeliso ea memori - ho batho ba bang ba amohelang memori ho ne ho khoneha ho boloka memori ea 1GB, empa letšoao lena le itšetlehile haholo ka mofuta oa mojaro, boholo ba RAM, palo ea li-CPU. le likarolo tsa ho sebetsa ka mohopolo. Liteko tse fetileng bontšitse phokotso ea tšebeliso ea mohopolo ka 650-700 MB (42% ea memori ea slab) ho web front-end, 750-800 MB (35%) ho seva e nang le cache ea DBMS le 700 MB (36%) ho seva sa DNS.

Source: opennet.ru

Eketsa ka tlhaloso