Librairie Zend Framework en cache APC
Bonjour,
J'ai mis en cache APC toutes les fichiers de la librairie du Zend Framework, selon la méthode suivante.
Ma question est :
- Comment et avec quels outils peut ton tester le gain en performance ?
Processus de mise en cache
ATTENTION faire ceci sur une machine local en test auparavant.
Je vous conseille de lire les bons tutos qui vous explique le fonctionnement du cache APC.
APC : un cache d'OPCodes pour PHP
1) extension php_apc
Il faut activer l'extension php_apc et dans le fichier php.ini déclarer un besoin de mémoire complémentaire. par défaut 30 mais la bibliothèque Zend en veut plus.
A rajouter dans votre fichier php.ini
Code:
1 2 3
|
[apc]
apc.shm_size = 128 |
Puis dans un fichier PHP à exécuter.
remplacer PATHZEND par votre répertoire
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
// mémoire alloué au cache APC suffissant
if (ini_get('apc.shm_size') > 80 ) {
/**
* une Classe Filtre
*
*/
class MyFilterIterator extends FilterIterator {
public function accept() {
return (substr($this->current(), -3) == 'php');
}
}
/**
* Mise en cache de la librairy ZEND
*/
$rdi = new RecursiveDirectoryIterator(PATHZEND);
$rii = new RecursiveIteratorIterator($rdi, RecursiveIteratorIterator::LEAVES_ONLY);
foreach (new MyFilterIterator($rii) as $file) {
apc_compile_file($file);
}
}// Eof:: mémoire alloué au cache APC suffissant |
Ce code est tiré de livre Zend Framwork (les cahiers du programmeur - Eyrolles) de Julien Pauli et Guillaume Ponçon que je recommande à tous.