Is het verstandig om dingen in sessions te cachen?
nvt nvt
16/09/2012 21:48:03Hallo,
Ik ben nu bijna 2,5 bezig met het schrijven van een eigen PHP MVC Framework en loop tegen iets aan. Mijn Framework is over het algemeen vrij traag dus probeer ik het op te lossen door een hoop te cachen aangezien ik de code zelf niet verder kan optimaliseren op dit moment. Nu is het zo dat ik alles cache in sessions omdat PHP memory caching niet van te voren is geinstalleerd bij de meeste mensen.
Is dit goed? Of word dit gezien als fout of is er een andere reden dat ik dit absoluut niet zou moeten doen? Want op dit moment gaat de page load time (in miliseconde) van 38 naar 21 als ik session caching gebruik.
Wat ik cache zijn overigens de autoloader paden in de XML configuratie (in array).
Ik ben nu bijna 2,5 bezig met het schrijven van een eigen PHP MVC Framework en loop tegen iets aan. Mijn Framework is over het algemeen vrij traag dus probeer ik het op te lossen door een hoop te cachen aangezien ik de code zelf niet verder kan optimaliseren op dit moment. Nu is het zo dat ik alles cache in sessions omdat PHP memory caching niet van te voren is geinstalleerd bij de meeste mensen.
Is dit goed? Of word dit gezien als fout of is er een andere reden dat ik dit absoluut niet zou moeten doen? Want op dit moment gaat de page load time (in miliseconde) van 38 naar 21 als ik session caching gebruik.
Wat ik cache zijn overigens de autoloader paden in de XML configuratie (in array).
PHP hulp
28/11/2024 15:51:40Wouter J
16/09/2012 22:24:37Waarom niet gewoon de cache in bestanden stoppen? Bijv. de XML configuratie het parsen naar een PHP array kost wat tijd. Sla die PHP array op in een bestand en je hoeft het alleen te parsen bij de allereerste pagina aanroep van de website, voor de rest gebruikt je gewoon de array in de cache file. Hardstikke handig, kun je gewoon met een require doen:
Dat is ten minste hoe het in Symfony2 werkt.
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$routeCollection = $container->get('routeCollection')(require $container->get('config.cachedir').'/routes.php.cache');
// ...
?>
$routeCollection = $container->get('routeCollection')(require $container->get('config.cachedir').'/routes.php.cache');
// ...
?>
Dat is ten minste hoe het in Symfony2 werkt.
nvt nvt
16/09/2012 22:47:49Ja klopt het probleem is alleen dat het amper wat scheelt als ik het in bestanden op sla. En wanneer ik het in sessions op sla scheelt het wel flink wat tijd.
Misschien zijn sessions gedeeltelijk memory based? Ik heb geen idee het is alleen wel vreemd dat het bij sessions WEL tijd scheelt en bij bestanden niet terwijl sessions ook gewoon in bestanden worden opgeslagen..
Misschien zijn sessions gedeeltelijk memory based? Ik heb geen idee het is alleen wel vreemd dat het bij sessions WEL tijd scheelt en bij bestanden niet terwijl sessions ook gewoon in bestanden worden opgeslagen..