Nette/Cache a počet přístupů k souborům cache
- nanuqcz
- Člen | 822
Ahoj,
chtěl bych se zeptat z hlediska optimalizace pro rychlost. Kolikrát v tomto
případě Nette/Cache bude otevírat nějaké soubory ze složky
temp/cache
a číst z nich data?
<?php
$storage = new Nette\Caching\Storages\FileStorage('temp/cache');
$cache = new Cache($storage);
$cache->save('foo', 'bar'); // zde proběhne zápis do souboru
echo $cache->load('foo'); // první načtení dat, předpokládám že Nette/Cache si data přečte ze souboru
for ($i = 0; $i < 1000; $i++) {
echo $cache->load('foo'); // znovu výpis stejných dat - proběhne zde nové načtení dat ze souboru?
}
?>
Snad chápete, na co se ptám :-) Díky za odpovědi.
Editoval nanuqcz (24. 12. 2013 22:19)
- Tomáš Votruba
- Moderator | 1114
Ahoj,
myslím, že by ti hned odpověděl Debugger::timer()
, resp.
memory_get_peak_usage
umístěný kolem smyčky.
Jestli tě tedy zajímá rychlost.
Případně koukni přímo na FileStorage->readMetaAndLock()
Editoval Tomáš Votruba (24. 12. 2013 22:41)
- David Matějka
- Moderator | 6445
kdyz kouknes do kodu, tak zjistis, ze to bude cist pokazde znovu.. tohle by
nemelo optimalizovat nette, ale ty, abys tolikrat necet z cache.
kdyby to navic delalo nette a drzelo si data v pameti, hrozil by problem
s pameti – GC by ta data nemohl odstranit..
kdybys chtel jednoduche globalni reseni, neni problem si napsat wrapper okolo klasickeho storage