signifikanne andmete vahemĂ€lu sĂŒsteemi vĂ€ljalase , mis haldab andmeid vĂ”tme/vÀÀrtuse formaadis ja on kasutusmugavuse poolest lihtne. Memcached'i kasutatakse sageli kergekaalu lahendusena, et kiirendada kĂ”rge koormusega veebilehtede tööd, salvestades vahemĂ€llu juurdepÀÀsu andmebaasi ja vaheandmete jaoks. Kood BSD litsentsi alusel.
Uues versioonis on stabiliseeritud salvestus "", mis nĂŒĂŒd kogutakse vaikimisi (deaktiveerimiseks on olemas vĂ”imalus skripti konfigureerimisel "âdisable-extstore"), kuid nĂ”uab kĂ€ivitamisel selget aktiveerimist (vana paigaldus jĂ€tkab tööd pĂ€rast uuendamist ilma muudatusteta). Kuigi salvestus "extstore" on ĂŒldjoontes tunnustatud stabiilsena, soovitatakse selle rakendamisel suurt ettevaatlikkust.
Extstore vĂ”imaldab kasutada SSD/Flash-mĂ€lusid vahemĂ€lu suuruse laiendamiseks. Nagu ka operatiivmĂ€lu kasutamisel, ei ole Flash-mĂ€lu salvestus pĂŒsiv ja taastatakse taaskĂ€ivitamisel. Uue reĆŸiimi peamiseks rakenduseks on suurte andmete tĂ”hus kĂ€tketehaldamine. "Extstore" kasutamisel sĂ€ilitavad vĂ”tmed ja metaandmed nagu enne vaid operatiivmĂ€lus, kuid suurte andmete seondumise korral, mille suurus ĂŒletab kindlaksmÀÀratud piiri, salvestatakse need vĂ€lisesse salvestusse, jĂ€ttes operatiivmĂ€lu vaid viitamisindeksi.
Kui vÔtmega seostatakse vÀikesemÔÔtmelisi andmeid, töötab Memcached tavapÀraselt, hoides andmeid mÀlus ja mitte pöördudes vÀlise salvestusruumi poole. Kui vaba mÀlu on palju, vÔivad kÔige nÔudlikumad andmed olla tÀielikult vahemÀlus (nÀiteks on vÔimalik seadistada, et Flashi salvestusse kirjutatakse ainult objektid, mis on suuremad kui 1024 baiti, kui neile ei ole juurdepÀÀsetud 3600 sekundi jooksul).
Rakendamine on optimeeritud maksimaalse jÔudluse ja minimaalsete CPU koormuste tagamiseks, tÔenÀoliselt ladustamise efektiivsuse arvelt (suur fraktsioneerimise tase). Flash-mÀluseadmestiku kestvuse pikendamiseks andmed puhverdatakse ja kirjutatakse salvestusse jÀrjestikku. VahemÀlu seisundi sÀilitamiseks taaskÀivituste vahel saab kasutada versioonis 1.5.18 ilmnenud vÔimalust kirjutada vahemÀlu dump faili. JÀrgneval kÀivitamisel saab vahemÀlu sellelt faililt taastada, et vÀltida koormuse tipphetki sisu töötlejatelt, kuna vahemÀlu on kohe 'soe'.
Teiseks oluliseks muudatuseks Memcached 1.6-s on koodi ĂŒmberkujundamine vĂ”rgusuhtluse jaoks, mis on kohandatud automaatseks paketite töötlemiseks ĂŒhe sĂŒsteemikĂ”ne raames. Varasemalt, kui edastati mitu "GET" kĂ€sku ĂŒhes TCP-paketis, saatis memcached tulemused, tehes eraldi sĂŒsteemikĂ”nesid. Memcached 1.6-s kogutakse vastused ja tagastatakse ĂŒhe sĂŒsteemikĂ”ne saatmise kaudu. Tulemuseks on keskmiselt 1,5 vĂ”tme kohta sĂŒsteemikĂ”ne, mis testide pĂ”hjal nĂ€itab CPU koormuse vĂ€henemist kuni 25% ja latentsuse langust mitu protsenti.
VĂ”rgusubsystemi ĂŒmberkujundamine vĂ”imaldas liikuda dĂŒnaamilise mĂ€luhalduse suunas, kus vahemĂ€lu eraldatakse vastavalt vajadusele, selle asemel et mÀÀrata vahemĂ€lu staatiliselt. See optimeerimine vĂ€hendas muutujate mĂ€lu tarbimist ootereĆŸiimis uute kĂ€skude ootamisel kliendi seose kaudu 4,5 KB-st 400â500 baitini ning vĂ”imaldas vabaneda paljusid malloc, realloc ja free kutseid, mis pĂ”hjustasid liigset mĂ€lu fragmenteerimist sĂŒsteemides, kus on suur arv seoseid. Iga tööskeem töötleb nĂŒĂŒd oma vahemĂ€lu lugemiseks ja kirjutamiseks aktiivsetele kliendiseostele. Nende vahemĂ€lu suuruse seadmiseks
on ette nĂ€htud valikud â-o resp_obj_mem_limit=Nâ ja â-o read_buf_mem_limt=Nâ.
Harus 1.6 on vÀlja kuulutatud, et see liigitatakse vananenuks. serveriga suhtlemiseks. Binaarprotokolli hooldus ja vigade parandamine jÀtkub, kuid uued funktsioonid ja olemasolevate funktsioonide vÀrskendused ei tule selle raamistikku. jÀtkab arengut muutumatuna. Binaarprotokolli asemel on tulnud uus protokoll (tekstiline versioon protokollist kompaktsete meta-kÀskudega), mis demonstreerib optimaalseid jÔudluse ja usaldusvÀÀrsuse kombinatsioone. Uus protokoll katab kÔik toimingud, mis olid varem saadaval tekstilise ja binaarse protokolli kaudu.
Allikas: opennet.ru
