instalar ext apcu php apache2 apc

ext - php apc install



Potencial de APC de PHP APC Slam para clave (4)

Recibo este error al intentar usar apc_store() . Busqué en Google y vi que se trataba de un error de la bomba de tiempo de APC y vi algunas correcciones que sugerían agregar apc.slam_defense = Off; a php.ini.

Necesito saber si esto ha ocurrido debido a un error de programación y, en caso afirmativo, cómo solucionarlo.

Este es el segmento de código:

if ($data = apc_fetch("foo")) { $an_array = $data; } else { /* couple of lines */ apc_store("circles", $an_array); // This is where I get the error }

Este script será llamado frecuentemente en mi sistema desplegado.

Espero haber proporcionado suficiente información

Gracias por adelantado


Desde APC 3.1.3, parece que hay un error ( http://pecl.php.net/bugs/bug.php?id=16814 ), se advierte cuando Slam Defense está activado y cuando intenta escribir un Clave que ya existe.
No parece estar arreglado todavía.


Establecer apc.write_lock = 1 y apc.slam_defense = 0 en php.ini debería solucionar el problema.


Estas instrucciones variarán en función de cómo se instale PHP.

Pero, en su archivo apc.ini (o apc.ini , o php.ini ) después de haber agregado su extension=apc.so puede desactivar la defensa de slam

Por ejemplo, esta es mi configuración que uso.

[apc] apc.enabled=1 apc.shm_size=48M apc.num_files_hint=10000 apc.user_entries_hint=10000 apc.max_file_size=5M apc.stat=1 apc.enable_cli=On apc.write_lock = 1 apc.slam_defense = 0 # <----- This is the Important Setting


Las últimas versiones de APC parecen resolver el problema, puede actualizar APC con PECL

pecl upgrade apc