Memcached 1.6.0 جو رليز خارجي اسٽوريج لاءِ سپورٽ سان فعال

جڳه ورتي ان-ميموري ڊيٽا ڪيشنگ سسٽم جي اهم رليز Memcached 1.6.0، جيڪو ڊيٽا تي ڪي/ويليو فارميٽ ۾ هلندو آهي ۽ استعمال ڪرڻ آسان آهي. Memcached عام طور تي استعمال ڪيو ويندو آھي ھڪڙو ھلڪو وزن حل ڪرڻ لاءِ تيز لوڊ سائيٽن جي ڪم کي تيز ڪرڻ لاءِ DBMS ۽ وچولي ڊيٽا تائين رسائي کي ڪيش ڪندي. ڪوڊ فراهم ڪيو ويو BSD لائسنس جي تحت.

نئون نسخو اسٽوريج جي عمل کي مستحڪم ڪري ٿو "extstore"، جيڪو ھاڻي ڊفالٽ طور ٺاھيو ويو آھي (ڪانفيگر اسڪرپٽ ۾ غير فعال ڪرڻ لاءِ، اختيار "-disable-extstore" مهيا ڪيو ويو آھي)، پر ان کي شروع ڪرڻ تي واضح چالو ڪرڻ جي ضرورت آھي (پراڻي تنصيب اپڊيٽ ٿيڻ کان پوءِ تبديلين کان سواءِ ڪم ڪنديون رھنديون). جيتوڻيڪ extstore کي عام طور تي مستحڪم سمجهيو ويندو آهي، احتياط جي صلاح ڏني وئي آهي جڏهن ان کي تمام وڏي سسٽم تي لاڳو ڪيو وڃي.

Extstore توهان کي ڪيش سائيز کي وڌائڻ لاءِ SSD/Flash Drives استعمال ڪرڻ جي اجازت ڏئي ٿو. جيئن رام سان، فليش اسٽوريج مستقل نه آهي ۽ ٻيهر شروع ٿيڻ تي ريٽ ڪيو ويندو آهي. نئين موڊ جو دائرو وڏي ڊيٽا جي موثر ڪيشنگ کي يقيني بڻائڻ آهي. "extstore" استعمال ڪرڻ وقت، چاٻيون ۽ ميٽا ڊيٽا، اڳي وانگر، صرف RAM ۾ ذخيرو ٿيل آھن، پر چاٻين سان لاڳاپيل وڏي ڊيٽا، جنھن جي ماپ ھڪڙي حد کان وڌيڪ آھي، خارجي اسٽوريج ۾ ذخيرو ٿيل آھي، ۽ صرف پوائنٽر RAM ۾ رھندو آھي.

جيڪڏهن ڪنجي ننڍي ڊيٽا سان جڙيل آهي، ته پوءِ Memcached معمول مطابق ڪم ڪري ٿو، ڊيٽا کي ميموري ۾ رکي ٿو ۽ خارجي اسٽوريج تائين رسائي نٿو ڪري. جيڪڏهن تمام گهڻي مفت ميموري آهي، ته پوءِ سڀ کان وڌيڪ گهربل ڊيٽا اضافي طور تي مڪمل طور تي RAM جي ڪيش ۾ موجود ٿي سگهي ٿو (مثال طور، توهان وضاحت ڪري سگهو ٿا ته صرف 1024 بائيٽ کان وڏيون شيون جيڪي 3600 سيڪنڊن تائين رسائي نه ڪيون ويون آهن انهن کي فليش تي ري سيٽ ڪيو ويو آهي. ).

عمل درآمد کي بهتر ڪيو ويو آهي ته وڌ ۾ وڌ ڪارڪردگي ۽ گهٽ ۾ گهٽ سي پي يو لوڊ کي يقيني بڻائڻ لاءِ، اسٽوريج جي ڪارڪردگيءَ جي خرچ تي (اعليٰ سطح جو ٽڪراءُ). فليش ڊرائيو جي زندگي کي وڌائڻ لاء، ڊيٽا کي بفر ڪيو ويو آهي ۽ ترتيب سان اسٽوريج ڏانهن فلش ڪيو ويو آهي. ٻيهر شروع ٿيڻ جي وچ ۾ ڪيش اسٽيٽ کي بچائڻ لاءِ، توهان استعمال ڪري سگهو ٿا اها صلاحيت جيڪا رليز 1.5.18 ۾ ظاهر ٿئي ٿي ته ڪيش ڊمپ کي فائل ۾ ڊمپ ڪرڻ لاءِ. ايندڙ شروعات تي، توهان هن فائل مان ڪيش بحال ڪري سگهو ٿا ته مواد پروسيسرز تي لوڊ ۾ چوٽي کي ختم ڪرڻ لاءِ ڪيش خالي هجڻ جي ڪري (ڪيش فوري طور تي ”گرم“ ٿي وڃي ٿي).

Memcached 1.6 ۾ ٻي اهم تبديلي نيٽ ورڪ ڪميونيڪيشن ڪوڊ جو ٻيهر ڪم ڪرڻ هو، جيڪو خودڪار طريقي سان هڪ سسٽم ڪال اندر بيچ جي درخواستن تي عمل ڪرڻ لاءِ ترتيب ڏنو ويو آهي. اڳي، جڏهن هڪ واحد TCP پيڪٽ ۾ ڪيترائي GET حڪم موڪليندا هئا، memcached نتيجا موڪليندو هو الڳ سسٽم ڪالن سان. Memcached 1.6 ۾، جواب گڏ ڪيا ويا آهن ۽ هڪ واحد سسٽم ڪال موڪلڻ سان واپس ايندا آهن. نتيجي طور، ھاڻي آھي سراسري طور تي 1.5 چاٻيون في سسٽم ڪال، جيڪي ٽيسٽ ۾ سي پي يو لوڊ ۾ گھٽتائي کي 25٪ تائين گھٽائي ٿو ۽ ويڪرائي ۾ گھٽتائي ۾ ڪيترائي سيڪڙو.

نيٽ ورڪ سبسسٽم جي ٻيهر ڊيزائن کي پڻ ممڪن بڻايو ويو ته بفرز جي متحرڪ مختص ڪرڻ جي ضرورت مطابق، بفرز کي مستحڪم طور تي تفويض ڪرڻ بدران. هن اصلاح 4.5 KB کان 400-500 بائيٽ تائين ڪلائنٽ قائم ڪيل ڪنيڪشن ذريعي نون حڪمن جي انتظار ۾ ميموري جي استعمال کي گهٽائي ڇڏيو، ۽ انهي کي پڻ ممڪن ڪيو ته ڪيترن ئي ڪالن کان نجات حاصل ڪرڻ malloc، realloc ۽ مفت، جيڪي غير ضروري ميموري فريگمينٽيشن جو سبب بڻجن ٿيون. ڪنيڪشن جي وڏي تعداد سان سسٽم. هر ورڪر ٿريڊ هاڻي فعال ڪلائنٽ ڪنيڪشن لاءِ پڙهڻ ۽ لکڻ جي بفرن جو پنهنجو پول سنڀاليندو آهي. انهن بفرن جي سائيز کي ترتيب ڏيڻ لاء
اختيارات "-o resp_obj_mem_limit=N" ۽ "-o read_buf_mem_limt=N" مهيا ڪيا ويا آهن.

برانچ 1.6 پڻ ختم ڪرڻ جو اعلان ڪيو بائنري پروٽوڪول سرور سان رابطي. بائنري پروٽوڪول جي سار سنڀال ۽ بگ فيڪس جاري رهندو، پر موجوده خصوصيتن ۾ نوان خاصيتون ۽ تازه ڪاريون پورٽ نه ٿينديون. ٽيڪسٽ پروٽوڪول بغير تبديلين جي ترقي جاري رکندي. بائنري پروٽوڪول کي نئين پروٽوڪول سان تبديل ڪيو ويو آهي مقصد (ڪمپیکٹ ميٽا ڪمانڊز سان گڏ پروٽوڪول جو هڪ ٽيڪسٽ ورزن)، ڪارڪردگي ۽ اعتبار جي بهترين ميلاپ کي ظاهر ڪري ٿو. نئون پروٽوڪول متن ۽ بائنري پروٽوڪول ذريعي اڳ ۾ موجود سڀني عملن کي ڍڪي ٿو.

جو ذريعو: opennet.ru

تبصرو شامل ڪريو