¿Es el módulo PathAuto un cerdo de memoria?

9

Probablemente necesite usar el módulo PathAuto para un proyecto actual. Mientras lo usa en desarrollo, como administrador, la desaceleración del sitio durante los cambios es una locura.

¿PathAuto es un gran sumidero de memoria, y hay formas de mitigar esto?

David Csonka
fuente
44
Como regla, desactivo PathAuto cuando hago cualquier creación / desarrollo de sitios. Los requisitos de memoria, especialmente con las importaciones de contenido inicial masivo a menudo exceden los valores razonables. Me resulta mucho más fácil desarrollar el sitio, importar el contenido y ENTONCES generar rutas masivas antes del lanzamiento.
Jake The Dweeb
1
¿Qué versión de Drupal?
mpdonadio
Buen punto @JakeTheDweeb
chrisjlee

Respuestas:

18

Depende en gran medida de la versión de Core que esté utilizando. El principal problema de memoria es con el módulo Token para Drupal 6, cuando se le da un nodo generará todos los tokens posibles para ese nodo, independientemente de los tokens que realmente serán reemplazados. Esto significa que los tokens caros que necesitan cargar o renderizar otros objetos, etc., además de la gran cantidad de tokens generados, causan los problemas.

Con Drupal 7, la API de tokens mejorada solo genera tokens que realmente usa y mejora en gran medida el rendimiento y el uso de la memoria. En uso normal, Pathauto realmente solo importa cuando se guarda un elemento, pero no afecta las vistas de página "normales".

Dave Reid
fuente
Uso de Drupal 7. "En uso normal, Pathauto realmente solo importa cuando se guarda un elemento, pero no afecta las vistas de página" normales ". Esta es una buena información para saber. Entonces, básicamente, ¿qué dice que el uso de memoria es menor una vez que se han creado los alias de ruta?
David Csonka
1
Si. Pathauto no debería estar causando que nada se ejecute en las vistas de página normales, por lo que no debería estar causando un uso de memoria adicional.
Dave Reid
9

Un problema con el que nos topamos en Drupal 7 es cuando tienes muchos nodos que obtendrían el mismo alias de ruta. Porque lo que sucede es que el primero obtiene $ alias, el segundo prueba $ alias, ve que este ya está reservado y usa $ alias-1. El tercero prueba $ alias, luego $ alias-1 y luego usa $ alias-2. Y así. Sin embargo, ese no es el problema de Pathauto y no es realmente un error, ya que deberías limpiar tus datos malos (teníamos 600k artículos impresos importados con cientos de títulos iguales ... como "clima";)) o elegir un mejor patrón para tu alias (por ejemplo, incluir la fecha). Esto también puede ralentizar seriamente la importación de datos si tiene habilitado Pathauto.

Otro problema es que el navegador de tokens explota si tiene muchos campos que pueden romper por completo cualquier página que enumere un navegador de tokens, especialmente el sitio de configuración de pathauto que tiene varios de esos.

Aparte de esos problemas relacionados, no he visto ningún problema de rendimiento directo causado por Pathauto. Si cree que lo hace, lo que realmente debería hacer es perfilar su sitio con Xhprof para ver qué está usando realmente la CPU / memoria.

Berdir
fuente
Buenos consejos, gracias! No consideré las ramificaciones de posibles alias duplicados.
David Csonka