Tso tawm Memcached 1.6.0 nrog kev txhawb nqa rau sab nraud cia qhib

coj qhov chaw tseem ceeb tso tawm ntawm lub cim xeeb cov ntaub ntawv caching system Memcached 1.6.0, uas ua haujlwm ntawm cov ntaub ntawv hauv hom tseem ceeb / tus nqi thiab siv tau yooj yim. Memcached feem ntau yog siv los ua ib qho kev daws teeb meem los ua kom cov haujlwm ntawm cov chaw thauj khoom hnyav heev los ntawm caching nkag mus rau DBMS thiab cov ntaub ntawv nruab nrab. Code nkag rau hauv raws li BSD daim ntawv tso cai.

Tus tshiab version stabilizes qhov kev siv ntawm lub cia "extstore", uas tam sim no tau tsim los ntawm lub neej ntawd (kom lov tes taw hauv cov ntawv teeb tsa, qhov kev xaiv "-disable-extstore" yog muab), tab sis yuav tsum tau ua kom pom tseeb ntawm kev pib ua haujlwm (kev teeb tsa qub yuav ua haujlwm ntxiv yam tsis muaj kev hloov pauv tom qab hloov tshiab). Txawm hais tias extstore feem ntau suav tias yog qhov ruaj khov, ceev faj yog qhia thaum siv nws ntawm cov tshuab loj heev.

Extstore tso cai rau koj siv SSD / Flash drives los nthuav cov cache loj. Raws li nrog RAM, Flash cia tsis tas mus li thiab rov pib dua thaum pib dua. Lub Scope ntawm hom tshiab yog los xyuas kom meej caching npaum ntawm cov ntaub ntawv loj. Thaum siv "extstore", cov yuam sij thiab cov metadata yog, zoo li ua ntej, khaws cia hauv RAM nkaus xwb, tab sis cov ntaub ntawv loj cuam tshuam nrog cov yuam sij, qhov loj ntawm qhov ntau tshaj qhov pib, yog khaws cia rau sab nraud, thiab tsuas yog tus pointer tseem nyob hauv RAM.

Yog tias tus yuam sij cuam tshuam nrog cov ntaub ntawv me me, ces Memcached ua haujlwm li niaj zaus, khaws cov ntaub ntawv hauv nco thiab tsis nkag mus rau sab nraud cia. Yog tias muaj ntau lub cim xeeb dawb, ces cov ntaub ntawv xav tau tshaj plaws tuaj yeem ua tiav nyob rau hauv lub cache hauv RAM (piv txwv li, koj tuaj yeem qhia tau tias tsuas yog cov khoom loj dua 1024 bytes uas tsis tau nkag rau 3600 vib nas this rov qab rau Flash. ).

Qhov kev siv tau zoo los xyuas kom meej qhov ua tau zoo tshaj plaws thiab tsawg kawg CPU load, ntawm tus nqi ntawm kev cia khoom (qib siab ntawm fragmentation). Txhawm rau txuas ntxiv lub neej ntawm Flash drives, cov ntaub ntawv yog buffered thiab flushed rau cia ua ntu zus. Txhawm rau txuag lub xeev cache ntawm kev rov pib dua, koj tuaj yeem siv lub peev xwm uas tshwm sim hauv kev tso tawm 1.5.18 txhawm rau pov tseg lub cache pov tseg rau cov ntaub ntawv. Thaum pib ua haujlwm tom ntej, koj tuaj yeem rov qab tau lub cache los ntawm cov ntaub ntawv no kom tshem tawm cov peaks hauv kev thauj khoom ntawm cov ntsiab lus processors vim tias lub cache tau khoob (lub cache tam sim ntawd ua "sov").

Qhov kev hloov pauv thib ob tseem ceeb hauv Memcached 1.6 yog qhov rov ua haujlwm ntawm lub network kev sib txuas lus code, uas tau hloov kho kom tau txais cov txheej txheem batch thov hauv ib qho kev hu xov tooj. Yav dhau los, thaum xa ntau GET cov lus txib hauv ib pob ntawv TCP, memcached yuav xa cov txiaj ntsig nrog kev hu xov tooj sib cais. Hauv Memcached 1.6, cov lus teb tau sib sau ua ke thiab xa rov qab los ntawm kev xa ib qho kev hu xov tooj. Raws li qhov tshwm sim, tam sim no muaj qhov nruab nrab ntawm 1.5 tus yuam sij rau ib qho kev hu xov tooj, uas hauv kev sim ua kom pom qhov txo qis hauv CPU load txog li 25% thiab txo qis hauv latency los ntawm ob peb feem pua.

Kev kho dua tshiab ntawm lub network subsystem kuj ua rau nws muaj peev xwm txav mus rau qhov kev faib tawm ntawm cov buffers raws li qhov xav tau, tsis yog kev tso cai statically buffers. Qhov kev ua kom zoo no txo ​​qis kev siv lub cim xeeb thaum tos cov lus txib tshiab los ntawm cov neeg siv khoom tsim kev sib txuas ntawm 4.5 KB rau 400-500 bytes, thiab tseem ua rau nws muaj peev xwm tshem tau ntau hu rau malloc, realloc thiab dawb, uas ua rau tsis tsim nyog nco fragmentation ntawm systems nrog ntau cov kev sib txuas. Txhua tus neeg ua haujlwm xov tam sim no tswj hwm nws tus kheej lub pas dej ntawm kev nyeem thiab sau buffers rau cov neeg siv khoom sib txuas. Txhawm rau kho qhov loj ntawm cov buffers no
cov kev xaiv "-o resp_obj_mem_limit=N" thiab "-o read_buf_mem_limt=N" yog muab.

Ceg 1.6 kuj tshaj tawm qhov kev txiav txim siab ntawm binary raws tu qauv kev cuam tshuam nrog server. Binary raws tu qauv thiab kho kab laum yuav txuas ntxiv mus, tab sis cov yam ntxwv tshiab thiab hloov tshiab rau cov yam ntxwv uas twb muaj lawm yuav tsis raug xa mus. Cov ntawv nyeem raws tu qauv yuav txuas ntxiv txhim kho yam tsis muaj kev hloov pauv. Cov txheej txheem binary tau hloov los ntawm cov txheej txheem tshiab lub hom phiaj (ib tsab ntawv version ntawm cov txheej txheem nrog compact meta-commands), ua kom pom kev sib xyaw ua ke ntawm kev ua tau zoo thiab kev ntseeg tau. Cov txheej txheem tshiab npog tag nrho cov haujlwm yav dhau los muaj los ntawm cov ntawv nyeem thiab binary raws tu qauv.

Tau qhov twg los: opennet.ru

Ntxiv ib saib