Įvadas į paskirstytą tarpinę atmintį Microsoft Velocity – 3 dalis
Parašė Sergejus | 2009-09-27 22:17Antroje įvado dalyje aš aprašiau Microsoft Velocity diegimą ir konfigūravimą. Šiandien paskutinė straipsnių ciklo dalis, kurioje norėčiau trumpai aprašyti pagrindinius Velocity API metodus. Šiame pavyzdyje aš naudosiu konsolinę programą, kuri kešuos iš vienos lentelės gaunamus duomenis.
Pradėsime nuo konfigūracijos failo aprašymo. Darant prielaidą, kad Microsoft Distributed Cache yra suinstaliuotas lokaliame kompiuteryje ir naudoja prievadą (portą) pagal nutylėjimą, App.config failas atrodys taip:
Norėdami pasinaudoti Velocity iš kodo, pirma reikia įtraukti dvi nuorodas į CacheBaseLibrary ir ClientLibrary bibliotekas (randasi Microsoft Distributed Cache kataloge). Tarpinės atminties panaudojimą geriausia parodyti aprašant servisų klasę:
Kaip matyti, metode GetLanguages() pirma bandoma kreiptis į tarpinę atmintį ir jeigu joje nieko nėra – vykdoma užklausą į duomenų bazę. Kadangi tarpinė atmintis turi būti atnaujinama keičiant egzistuojančius arba įterpiant naujus duomenis, metode SaveLanguage() sukešuotas elementas išvalomas.
Norėdami patikrinti tarpinės atminties veikimą, parašykime paprasčiausią testą:
Testo metu 10 kartų kreipiamasi į metodą GetLanguages(), bet Debug konsolėje matysime lygiai 1 select užklausą. Norėčiau atkreipti dėmesį į tai, kaip kuriamas tarpinės atminties objektas. Tai daroma GetDefaultCache() factory metodo pagalba. Norint gauti priėjimą ne prie numatytosios tarpinės atminties, bet prie norimo tarpinės atminties regiono – tereikia pasinaudoti metodu GetCache().
Štai ir viskas, ką norėjau aprašyti šiame straipsnių cikle. Iš asmeninės patirties galiu pasakyti, kad Microsoft Distributed Cache greitaveika šiuo metu tikrai yra gera, bet API jaučiasi dar nėra iki galo išbaigtas. Pavyzdžiui, nėra paprasto būdo patikrinti ar egzistuoja tarpinės atminties regionas nurodytu vardu. Kaip mane tikino Velocity komanda, su artimiausia versija toks metodas pasirodys. Nepaisant visų trūkumų, džiugu kad judama tinkama linkme ir jeigu jums prisireiks paskirstytos tarpinės atminties – tikrai siūlyčiau išbandyti Microsoft Velocity.
Rodyk draugams
Naujausi komentarai