Liberasyon Memcached 1.6.0 ak sipò pou depo ekstèn pèmèt

pran plas lage enpòtan nan sistèm nan kach done nan memwa Memcached 1.6.0, ki opere sou done nan fòma kle/valè epi li fasil pou itilize. Memcached se anjeneral yo itilize kòm yon solisyon ki lejè akselere travay la nan sit ki gen gwo chaj pa kachèt aksè nan DBMS yo ak done entèmedyè. Kòd apwovizyone anba lisans BSD.

Nouvo vèsyon an estabilize aplikasyon depo a "ekststore", ki kounye a bati pa default (pou enfim nan script konfigirasyon an, opsyon "-disable-extstore" yo bay), men li mande deklanchman eksplisit nan demaraj (ansyen enstalasyon yo ap kontinye travay san chanjman apre aktyalizasyon a). Malgre ke extstore jeneralman konsidere kòm ki estab, prekosyon konseye lè aplike li sou sistèm gwo anpil.

Extstore pèmèt ou sèvi ak kondui SSD/Flash pou elaji gwosè kachèt la. Menm jan ak RAM, depo Flash pa pèmanan epi li reset lè rekòmanse. Sijè ki abòde lan mòd nan nouvo se asire kachèt efikas nan done gwo. Lè w ap itilize "extstore", kle ak metadata yo, tankou anvan, estoke sèlman nan RAM, men gwo done ki asosye ak kle, gwosè a nan ki depase yon papòt fikse, yo estoke nan depo ekstèn, epi sèlman konsèy la rete nan RAM.

Si kle a asosye ak ti done, Lè sa a, Memcached travay kòm dabitid, kenbe done yo nan memwa epi yo pa jwenn aksè nan depo ekstèn. Si gen yon anpil nan memwa gratis, Lè sa a, done ki pi nesesè yo ka anplis konplètman sitiye nan kachèt la nan RAM (pa egzanp, ou ka presize ke sèlman objè ki pi gwo pase 1024 bytes ki pa te jwenn aksè pou 3600 segonn yo reset nan Flash. ).

Aplikasyon an optimize pou asire pèfòmans maksimòm ak chaj CPU minim, nan depans lan nan efikasite depo (wo nivo fwagmantasyon). Pou pwolonje lavi a nan kondui Flash, done yo tanpon ak vide nan depo sekans. Pou sove eta a kachèt ant rekòmanse, ou ka itilize kapasite ki te parèt nan lage 1.5.18 pou jete yon pil fatra kachèt nan yon dosye. Nan pwochen demaraj la, ou ka retabli kachèt nan dosye sa a pou elimine pik nan chaj la sou processeurs kontni akòz kachèt la vid (kachèt la imedyatman vin "cho").

Dezyèm chanjman enpòtan nan Memcached 1.6 te retravay kòd kominikasyon rezo a, ki adapte pou otomatikman trete demann pakèt nan yon sèl apèl sistèm. Précédemment, lè yo te voye plizyè kòmand GET nan yon sèl pake TCP, memcached ta voye rezilta yo ak apèl sistèm separe. Nan Memcached 1.6, repons yo rasanble epi yo retounen lè yo voye yon sèl apèl sistèm. Kòm yon rezilta, kounye a gen yon mwayèn de 1.5 kle pou chak apèl sistèm, ki nan tès yo demontre yon rediksyon nan chaj CPU jiska 25% ak yon rediksyon nan latansi pa plizyè pousan.

Redesign nan subsistèm rezo a te fè li posib tou pou yo avanse nan alokasyon dinamik nan tanpon jan sa nesesè, olye pou yo plase estatikman tanpon. Optimize sa a redwi konsomasyon memwa pandan y ap tann nouvo kòmandman atravè yon koneksyon kliyan-etabli soti nan 4.5 KB a 400-500 bytes, epi tou li te fè li posib yo debarase m de anpil apèl nan malloc, realloc ak gratis, ki mennen nan fwagmantasyon memwa nesesè sou sistèm ak yon gwo kantite koneksyon. Chak fil travayè kounye a okipe pwòp pisin li ak ekri tanpon pou koneksyon kliyan aktif. Pou ajiste gwosè tanpon sa yo
opsyon yo "-o resp_obj_mem_limit=N" ak "-o read_buf_mem_limt=N" yo bay.

Branch 1.6 te anonse tou depresyon nan pwotokòl binè entèraksyon ak sèvè a. Antretyen pwotokòl binè ak koreksyon ensèk yo pral kontinye, men nouvo karakteristik ak mizajou nan karakteristik ki deja egziste yo pa pral transfè. Pwotokòl tèks ap kontinye devlope san chanjman. Pwotokòl binè a te ranplase pa yon nouvo pwotokòl meta (yon vèsyon tèks pwotokòl la ak meta-kòmand kontra enfòmèl ant), demontre konbinezon an pi bon nan pèfòmans ak fyab. Nouvo pwotokòl la kouvri tout operasyon ki te deja disponib atravè tèks ak pwotokòl binè.

Sous: opennet.ru

Add nouvo kòmantè