APC |
Alternative de cache PHP |
---|---|
PHP 5.0 à PHP 5.4 |
Extensions
Nom | Plateforme | |
---|---|---|
apc.so | Linux | |
php_apc.dll | Windows |
Description
Cette extension contient les fonctions du système de cache APC.
Fonctions
Procédure ou fonction | Version | Description |
---|---|---|
APC_ADD | APC 3.0.13+ | Cette fonction permet d'ajouter une variable au cache du magasin de données. |
APC_CACHE_INFO | APC 2.0.0+ | Cette fonction permet de demander les informations contenues en cache du magasin. |
APC_CLEAR_CACHE | APC 2.0.0+ | Cette fonction permet d'effacer les informations contenues en cache du magasin. |
APC_COMPILE_FILE | APC 3.0.13+ | Cette fonction permet d'entreposer un fichier dans le cache sans utilisé les filtres. |
APC_DEFINE_CONSTANTS | APC 3.0.0+ | Cette fonction permet d'indiquer un jeu de constantes à utilisé pour la définition et la récupération massive. |
APC_FETCH | APC 3.0.0+ | Cette fonction permet de demander une variable contenu dans le cache du magasin de données. |
APC_SMA_INFO | APC 2.0.0+ | Cette fonction permet de demander des informations sur la technique d'allocation de mémoire partagé qu'utilise l'APC. |
APC_STORE | APC 3.0.0+ | Cette fonction permet de mettre dans le cache du magasin de données une variable spécifié. |
Remarques
- ATTENTION ! Le module d'extension APC est abandonné à partir du PHP 5.5, il faudra plutôt utilisé le OPcache. Si vous tentez de l'installer à partir de cette version, vous recevrez des messages d'erreurs comme ceci : «make *** apc_compile.lo error 1 error make' failed».
- Il existe d'autres système de cache fonctionnant sous PHP comme memcached (classe memcache, classe memcached), Cache_Lite,... De plus, on peut les combinés avec des caches de proxy comme Varnish ou encore des contrôleurs de mise à disposition d'application Web (ADC) comme Citrix Netscaler, aiScaler, F5 Big-IP, Cisco ACE,...
- L'utilisation d'un cache pour accélérer le traitement des pages Web est une bonne chose, cependant, il ne faut pas oublier que c'est approche peut jouer des mauvais tours : des sections de sites ne se mettant pas à jour, des régressions non prises en compte,... Dans cette situation, il faudra vider le cache ou redémarrer le serveur Web, lors de vos déploiements.
- APC : Si vous avez des conflits avec le module memcached, et que votre module APC ne s'installe pas, vous pouvez forcer la désinstaller l'APC et la réinstaller de la façon suivante :
- Pour que l'extension APC soit prise en compte, il faut nécessaire qu'une instruction «extension=apc.so» ou «extension=php_apc.dll» se trouve quelque part dans le fichier «php.ini» ou dans ses fichiers d'inclusions (/etc/php.d/apc.ini). Également, la configuration doit se trouver dans la section «APC» lequel devrait ressembler à ceci :
- On devrait également voir un résultat semblable à celui-ci lorsque vous exécuter la fonction phpinfo() :
- Installation du Dashboard APC : De plus, vous pouvez installer un panneau de contrôle APC (APC Dashboard) , vous permettez d'en comprendre davantage sur le comportement de l'APC. Pour se faire, il faudra procéder de la façon suivante :
- Il faut télécharger le paquet APC sur le site Web http://pecl.php.net/package/apc.
- Ouvrir le fichier de paquet et y rechercher le fichier nommé «apc.php».
- Placer le fichier «apc.php» dans un répertoire Web accessible facilement comme par exemple «http://www.gladir.com/apcrep/apc.php». A partir de cette adresse, vous aurez donc accès au panneau de contrôle de l'APC.
- Dans le dossier contenant le fichier «apc.php», ajouter un utilisateur et un mot de passe à l'aide de «.htaccess» et «.htpasswd».
- Après tous ses changements, il est préférable de redémarrer le serveur Web afin de s'assurer que les changements ont été prises.
- Une fois l'installation terminé, vous devriez vous un résultat ressemblant à ceci :
pecl uninstall apc pecl install apc |
[APC] ; Ce paramètre indique la taille à laquelle chaque partage de segment de mémoire commence. La taille est normalement 8 Mo. apc.shm_size=8 ; Ces paramètres indique la quantité maximal de mémoire qu'un script peut occupé. apc.max_file_size=1M apc.ttl=0 apc.gc_ttl=3600 ; Ces paramètres sont éditer automatiques apc.file_update_protection=0 apc.enabled=1 apc.enable_cli=0 apc.cache_by_default=1 apc.include_once_override=0 apc.localcache=0 apc.localcache.size=512 apc.num_files_hint=1000 apc.report_autofilter=0 apc.rfc1867=0 apc.slam_defense=0 apc.stat=1 apc.stat_ctime=0 apc.ttl=7200 apc.user_entries_hint=4096 apc.user_ttl=7200 apc.write_lock=1 |
Installation
Voici comment installer l'extension de module APC avec Linux/Apache/PHP :
pecl install apc /etc/init.d/httpd restart |
Dernière mise à jour : Dimanche, le 9 novembre 2014