To prevent losing all of your APC custom user data on an apache restart, use this function along with apc_bin_loadfile to save your APC Memory Data on a restart of apache.
e.g. Write a php script to dump the file and one to re-load the file. Call the dump script directly before stopping apache, and then call the reload script directly after starting apache.
<?php
//saveapc
apc_bin_dumpfile(array(),null,"/path/to/my/file.data");
?>
<?php
//loadapc
apc_bin_loadfile("/path/to/my/file.data");
?>
# wget http://www.example.com/saveapc.php
# /etc/init.d/httpd restart
# wget http://www.example.com/loadapc.php
Particularly useful if you have a custom session handler using APC for storage
Even more handy, update the httpd restart bash script to automatically make these calls for you on a restart
apc_bin_dumpfile
(PECL apc >= 3.1.4)
apc_bin_dumpfile — Envoi une sortie binaire des fichiers et variables utilisateur spécifiés vers un fichier
Description
$files
, array $user_vars
, string $filename
[, int $flags = 0
[, resource $context
]] )Envoi une sortie binaire des fichiers et des variables utilisateur spécifiés depuis le cache APC vers un fichier donné.
Liste de paramètres
-
files -
Les noms des fichiers à sortir.
-
user_vars -
Les variables utilisateur à sortir.
-
filename -
Le fichier vers lequel envoyer les sorties.
-
flags -
Drapeaux passés au flux
filename. Voyez la documentation de file_put_contents() pour plus de détails. -
context -
Le contexte de flux à passer pour
filename. Voyez la documentation de file_put_contents() pour plus de détails.
Valeurs de retour
Le nombre d'octets écrits dans le fichier, sinon FALSE si APC n'est pas activé, si
filename est invalide ou ne peut être ouvert, si la
sortie générée est incomplète (ex: le disque est plein) ou enfin si une erreur
quelconque est survenue.
Voir aussi
- apc_bin_dump() - Récupère une sortie binaire des fichiers et variables utilisateur spécifiés
- apc_bin_load() - Charge une sortie binaire vers le cache fichiers ou utilisateur d'APC
