Descuento 20% Diciembre
Plugin Optimización de Imágenes Gratuito para WordPress
Jueves, 01 Enero 2015 23:40

¿Memoria insuficiente para ejecutar procesos en WordPress?

Escrito por 
CMS:  WordPress |  Versión:  Todas |  Nivel de dificultad:  Básico |  Tiempo estimado de lectura:  5 minutos


¿Memoria insuficiente para ejecutar procesos en WordPress?No es excesivamente habitual, principalmente en Hosting bien optimizados para trabajar con WordPress el que se presenten problemas de memoria cuando se están ejecutando procesos, normalmente desencadenados por la ejecución de plugins en la mayoría de casos.

Si se puede dar el caso de pasar una instalación del servicio de WordPress.com a un Hosting propio (self-hosting) y en el proceso de importación de post, entradas, paginas y demás elementos permitidos por WordPress.com, mediante el correspondiente archivo .xml te encuentres con errores de memoria, u otros derivados del proceso lanzado, que normalmente suele ser importantes a efectos de consumo en el servidor, dependiendo de la cantidad de elementos a importar.

En muchos servidores, las cantidades de memoria por defecto asignadas a WordPress no son suficientes para manejar determinados procesos o tareas, o están limitadas si se trata por ejemplo de CloudLinux. Afortunadamente, el aumento del límite de memoria en WordPress puede hacerse de forma sencilla, dentro de los límites establecidos en el php.ini de tu cuenta de Hosting.

Este ajuste puede ser necesario en caso de que recibas avisos como "Tamaño de la memoria de XXXX bytes agotado", en inglés:

"Allowed memory size of xxxxxx bytes exhausted".

En WordPress desde la versión 2.5 en que se incorporó esta posibilidad, puedes ampliar el valor mínimo por defecto aplicado por el servidor para tu cuenta, añadiendo en el archivo wp-config.php de la instalación afectada la siguiente linea:

define( 'WP_MEMORY_LIMIT', '64M' );

Este ajuste aumenta la memoria sólo para WordPress, no otras aplicaciones. Por defecto, WordPress intentará aumentar la memoria asignada de 40MB en PHP (el código está al principio del archivo /wp-includes/default-constants.php) para un solo sitio y 64MB para varios sitios, por lo que el define añadido en wp-config.php debe reflejar un valor mayor de 40 MB o 64 MB dependiendo de la configuración.

Este "define" carga una constante global que establecerá el límite de memoria de tu cuenta, para esta instalación en 64 MB.

Lo normal es que un Hosting permita (según limitaciones de ClodLinux) ampliar a 300 MB lo que seria igual a 20 procesos simultáneos, pero naturalmente esto dependerá del servidor, de la cuenta y sus particularidades.

Establecer un límite como el siguiente debería permitir trabajar holgadamente a la mayoría de instalaciones clásicas de WordPress:

define( 'WP_MEMORY_LIMIT', '128M' );


Para casos excepcionales, cuentas de Hosting son sitios web con mayor cantidad de tráfico y consumo de recursos, lo recomendado es consultar con su servicio de Hosting para que les revisen su caso si procede.

Si ya por defecto tienes establecido un valor igual o superior al que quieres invocar mediante la constante global, no es necesario que lo apliques pues prevalecerá el valor superior asignado en tu php.ini en el servidor.

Cabe decir que la mayoría de servicios de Hosting establecen por defecto como valor 8MB para el límite de memoria y por mucho que te empeñes en llamar mediante la citada constante global a un valor superior, no tendrás forma de que el cambio sea eficaz.

Si necesitas aplicar esta ampliación para el dashboard entonces puedes utilizar la siguiente constante global:

define( 'WP_MAX_MEMORY_LIMIT', '256M' );

Este valor debe ser declarado al principio del archivo wp-config.php

Te lo cuento en apenas 5 minutos en este vídeo:



Recomendado siempre antes de aplicar este tipo de cambios realizar una copia de seguridad y de paso consultar si procede con tu servicio de Soporte si el cambio que quieres aplicar será efectivo y si está permitido el nuevo límite de memoria que quieres establecer.



¿Te ha resultado interesante este artículo?

Suscríbete para recibir consejos exclusivos para WordPress, Joomla y PrestaShop



Luis Méndez Alejo

Miembro del equipo técnico de Webempresa.
Coordinador de contenidos en el Blog y en Youtube.
Google+


Plugin Optimización de Imágenes Gratuito para WordPress