Memcached ir aukštos kokybės MySQL - 💡 Fix My Ideas

Memcached ir aukštos kokybės MySQL

Memcached ir aukštos kokybės MySQL


Autorius: Ethan Holmes, 2019

„Memcached“ yra paskirstyto objekto talpyklos sistema, kuri iš pradžių buvo sukurta siekiant pagerinti „LiveJournal“ našumą ir vėliau buvo naudojama kaip daugelio didelės apkrovos svetainių mastelio nustatymo strategija. Jis tarnauja kaip didelis, labai greitas maišos stalas, kuris gali būti platinamas daugelyje serverių ir vienu metu pasiekiamas iš kelių procesų. Ji sukurta naudoti beveik bet kokiam „back-end“ talpyklų poreikiui ir didelės našumo žiniatinklio taikomosioms programoms, ji yra puikus priedas prie „MySQL“ duomenų bazės.

Tipiškoje aplinkoje žiniatinklio kūrėjas gali naudoti proceso lygio spartinimo ir integruoto „MySQL“ užklausos talpyklą, kad būtų galima nustatyti, kad papildomas našumas šiek tiek sumažės iš programos. Problema yra ta, kad proceso metu talpinimas atliekamas tik tame interneto procese, kuris veikia viename serveryje. Pagal apkrovą subalansuotą konfigūraciją, kiekvienas serveris palaiko savo talpyklą, apribodamas talpyklos efektyvumą ir turimą dydį. Panašiai „MySQL“ užklausos talpykla yra tik serveris, kuriame veikia „MySQL“ procesas. Užklausos talpykla taip pat ribojama, nes ji gali tik talpinti eilutės rezultatus. Su memcached galite nustatyti skaičių talpyklos serverius, kurie gali saugoti bet kokį serializuotą objektą, ir šiuos duomenis gali bendrinti visi serveriai, kurie yra subalansuoti. Cool, ne?

Norėdami sukurti atmintinę turintį serverį, paprasčiausiai atsisiųskite demoną ir paleiskite jį keliais parametrais. Iš memcached svetainės:

Pirma, paleidžiate memcached demoną tiek atsarginių mašinų, kiek turite. Demone nėra konfigūracijos failo, tik keletas komandų eilutės parinkčių, tik 3 ar 4 iš kurių jūs tikriausiai naudosite:

# ./memcached -d -m 2048 -1 10.0.0.40 -p 11211

Tai prasideda memcached kaip demonas, naudojant 2GB atminties, ir klausytis IP 10.0.0.40, prievadas 11211. Kadangi 32 bitų procesas gali būti skirtas tik 4GB virtualiosios atminties (paprastai žymiai mažiau, priklausomai nuo jūsų operacinės sistemos), jei jūs turite 32 bitų serverį su 4-64GB atmintimi, naudodami PAE, galite tiesiog paleisti kelis procesus mašinoje, kiekvienas naudodami 2 arba 3 GB atminties.

Tai maždaug taip paprasta, kaip ji gauna. Nėra realios konfigūracijos. Nėra autentifikavimo. Tai tik gigantoro maišos lentelė. Akivaizdu, kad jį nustatysite privačiame, neprisijungusiame tinkle. Iš ten talpyklos užklausos ir atnaujinimo darbai yra visiškai pritaikyti taikomųjų programų kūrėjui. Jums suteikiamos pagrindinės nustatymo, gavimo ir ištrinimo funkcijos. Štai paprastas pavyzdys PHP:

$ memcache = new Memcache; $ memcache-> addServer ('10 .0.0.40 ', 11211); $ memcache-> addServer ('10 .0.0.41 ', 11211);

$ value = „Duomenys į talpyklą“;

$ memcache-> set („thekey“, $ value, 60); echo „60 sekundžių spartinimas: $ vertė
“;

$ retrieved = $ memcache-> get („thekey“); echo „Gauta: $ atkurta
“;

PHP biblioteka rūpinasi nešvariu darbu, kuriuo serializuojate bet kokią vertę, kurią perduodate į talpyklą, todėl galite siųsti ir gauti masyvus ar net užbaigti duomenų objektus.

Programos duomenų sluoksnyje vietoj to, kad iškart pateksite į duomenų bazę, pirmiausia galite paklausti atmintinę. Jei elementas randamas, duomenų bazės ir duomenų objekto surinkti nereikia. Jei raktas nerastas, iš duomenų bazės pasirenkate reikiamus duomenis ir saugomas gautas objektas talpykloje. Panašiai atnaujinate talpyklą, kai duomenų objektas keičiamas ir atnaujinamas duomenų bazėje. Darant prielaidą, kad jūsų API yra gerai struktūrizuota, reikia atlikti tik keletą pakeitimų, kad būtų smarkiai pakeista jūsų taikomoji programa.

Sujungiau su keliais toliau nurodytais ištekliais, kur galite rasti daugiau informacijos apie memcached naudojimą savo programoje. Be dokumentacijos, esančios memcached tinklalapyje, Todd Hoff sudarė straipsnių sąrašą apie memcached ir apibendrino keletą memcached veiklos metodų. Tai gana universalus įrankis. Tiems iš jūsų, kurie naudojote atmintinę, pateikite mums komentarus ir dalinkitės savo patarimais ir gudrybėmis.

Memcached strategijos „Memcached“ ir „MySQL“ geresnės kartu „Memcached“ ir „MySQL“ pamokos (PDF)



Jums Gali Būti Įdomu

3D spausdinto garso baito magneto rėmelis Kalėdų dovana

3D spausdinto garso baito magneto rėmelis Kalėdų dovana


Projektas: asmeniniai popieriaus vyno stiklo pakabukai

Projektas: asmeniniai popieriaus vyno stiklo pakabukai


KAIP GPS Žymėti nuotraukas: Flickr, Mappr, Google Earth.

KAIP GPS Žymėti nuotraukas: Flickr, Mappr, Google Earth.


Punai ir kūrėjai

Punai ir kūrėjai






Naujausios Žinutės