Užklausos į duomenų bazę cache’avimas
Lygiai su tokia problema ir man teko susidurti, kaip šio rašinio autoriui. Kada užkešuoti kontrolerio funkciją neužtenka, nes ji gražina du ar daugiau skirtingus duomenų kiekius. Šis sprendimas leidžia kešuoti kiekvieną užklausimą į duomenų bazę atskirai:
-
// Cache query to /tmp/cache/sql/model-test_sql_query
-
$results = $this->Model->find('all', array(
-
'cache' => 'test_sql_query'
-
));
-
-
// Cache query to /tmp/cache/sql/model-another_query that expires in 24 hours
-
$results = $this->Model->find('all', array(
-
'cache' => array('another_query', '+24 hours')
-
));
Visa dokumentacija bei kodas – milesj.me

2009.04.17


sita problema turejau ir as, tik isprendziau naudodamas nocache taga, bet sitas sprendimas atrodo svaresnis. O kaip su cache trinimu? pvz jei update padarai kazkokiam irasui, trinti visa kataloga sql?
Nors asmeniškai dar nebandžiau, bet iš kodo sprendžiant cache’as neatsinaujina po update.