Zásek v LimitedScope::evaluate
- mario
- Člen | 4
Rád bych vyřešil prolém, který způsobuje, že load stránky mi trvá
kolem 14s. Znám přesné místo, kde se to zasekne, ale nemůžu přijít na to
proč. Je to ve třídě Nette\Utils\Utils\LimitedScope::evaluate()
a na tomhle řádku (49):
<?php
$res = eval('?>' . func_get_arg(0));
?>
přičemž v tom argumentu jsou data z configu a ještě cosi (používám config.neon a local verzi a je tam docela dost dat). Volá se to právě při načítání configu. Verze Nette je 2.0 pro php 5.3. Docela mi ten problém znepříjemňuje vývoj :) Díky
- Filip Procházka
- Moderator | 4668
To se děje pouze a jenom, když se config načítá. Takže když v něm při každém refreshi něco měníš, tak se bude pokaždé „kompilovat“ znovu.
Doporučil bych ti aktualizovat Nette na dev, už by měl fungovat dobře.
- mario
- Člen | 4
Tak jsem debugoval i ten kód, který se předává do eval. Zasekne se to při nastavování cache. Na local mám nastaveno DevNullStorage, takže to volá metodu rebuild, změnil jsem tedy cache storage a jsem pod sekundou, docela příjemný rozdíl :) Přesto moc nechápu, že na vývojovém stroji máme nastaveno DevNullStorage také a rozhodně zpracování stránky netrvá 14 sekund, ale do sekundy je hotovo..
- Filip Procházka
- Moderator | 4668
@**22**: Ano, řeší to problém slepice a vejce. Který prostě lépe vyřešit nejde.
I Symfony to takto dělá :P