Uus mÀluhaldusmeetod Facebookist

Üks sotsiaalvĂ”rgustiku arendusmeeskonna liige Facebook, Roman Gushchin, pakkus arendajate jagamises komplekti Linuxi tuuma plaastritest, mis on suunatud mĂ€lu haldamise parandamisele uue juhtimisseadmestiku rakendamise kaudu — slab (slab mĂ€lu kontroller).

Slab jaotamine –– on mĂ€lu haldamise mehhanism, mis on ette nĂ€htud mĂ€lu efektiivsemaks jaotamiseks ning mĂ€rkimisvÀÀrse fragmenteerimise kĂ”rvaldamiseks. Selle algoritmi aluseks on mÀÀratud mĂ€lu sĂ€ilitamine, mis sisaldab teatud tĂŒĂŒpi objekti, ja selle mĂ€lu uuesti kasutamine jĂ€rgmise eraldamise korral sama tĂŒĂŒpi objektile. See meetod tutvustas esmakordselt Jeff Bonwick SunOS-is ning seda kasutatakse laialdaselt paljude Unix-i operatsioonisĂŒsteemide tuumades, sealhulgas FreeBSD ja Linux.

Uue kontrolleri aluseks on slab arvestuse ĂŒleviimine mĂ€lulehtedelt tuuma objektide tasemele, mis vĂ”imaldab ĂŒhte slab-lehte jagada erinevates cgroupides, selle asemel, et mÀÀrata igale cgroupile eraldi vahemĂ€lu.

Katsetulemuste pĂ”hjal on tĂ”estatud, et ettepanekud mĂ€lu haldamise meetodid vĂ”imaldavad efektiivsuse suurenemine slab'i kasutuses kuni 45%, samuti vĂ€hendab operatsioonisĂŒsteemi tuuma kogu mĂ€lu tarbimist. Samuti, tĂ€nu slab'i lehtede arvu vĂ€henemisele, vĂ€heneb mĂ€lufragmenteerimine, mis ei saa mitte kuidagi mĂ”jutada sĂŒsteemi reaktsiooniaega.

Uut kontrollerit on testitud Facebooki tööserverites juba mitu kuud ning praegu vĂ”ib seda testimist pidada edukaks: tĂ”hususe ja vigade arvu suurenemiseta on mĂ€rgatud selget mĂ€lutaseme vĂ€hendamist — mĂ”nedel serveritel kuni 1 GB. See number on kuidagi subjektiivne, kuna nĂ€iteks varem tehtud testid nĂ€itasid veidi madalamaid tulemusi:

  • 650–700 MB veebifrontendi peal
  • 750–800 MB andmebaasi vahemĂ€lu serveris
  • 700 MB DNS-serveris

>>> Autori lehekĂŒlg GitHubis


>>> Varasemate testide tulemused

Allikas: linux.org.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster