lunes, 3 de mayo de 2021

Sesiones en memcache con Apache + PHP bajo Linux y se agota la memoria

Hola a todos, cuando se configuran las sesiones de PHP para que se almacenen en Memcache es frecuente ver aparecer el siguiente mensaje en el log:

PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 1143376 bytes) in Unknown on line 0

Esto suele indicar que hemos configurado algo mal. Si ves este mensaje revisa tu configuración de PHP y reinicia el Apache.

En mi caso, el problema fue que estoy configurando dos servidores Memcache (principal y failover) y me equivoqué y puse dos veces la misma URL (en tu caso puede ser la IP):

session.save_path="tcp://memcache1:11211,tcp://memcache1:11211"

Fue cambiar el segundo por "memcache2" y reiniciar Apache y todo funciona perfectamente.

Personalmente se echa en falta algún mensaje de error más descriptivo cuando te equivocas en alguna configuración, pero al fin y al cabo no es algo que se configure todos los días (yo al menos).

Salu2 a to2