Así que he estado notando en New Relic en muchos de nuestros sitios, muchas de nuestras cargas de páginas largas están sucediendo debido a Mage_Core_Model_Session_Abstract_Varien :: start. He investigado un poco y realmente no he visto a nadie más hablando de esto.
Utilizamos Nginx, PHP FPM, Redis para el almacenamiento en caché y Memcache para las sesiones. Algunas de mis ideas son que tal vez es algo más que está tomando una eternidad y parece que cargar la sesión es el problema. O de alguna manera, hay un código personalizado que agrega muchos datos a la sesión y provoca sesiones enormes.
No estoy tan bien informado en términos de sesiones y cómo se gestionan, sin embargo, encontré algunos artículos que hablan sobre el bloqueo de sesiones. Sin embargo, no creo que la gente abra tantas páginas al mismo tiempo.
Algunas de estas cargas son como 20-30 segundos. Tengo curiosidad por saber si alguien más ha notado esto o si tiene más conocimiento sobre cómo analizar este tipo de solicitudes largas debido a las sesiones.
fuente
Respuestas:
Esto probablemente está relacionado con un fenómeno relacionado con las sesiones del sistema de archivos. A pesar de lo que está informando mediante el uso de Mecached para sesiones, solo he visto esto yo mismo cuando, de hecho, estaba usando el sistema de archivos.
Esto se ha cubierto antes aquí:
/magento//a/3721/336
De hecho, una captura de pantalla de una memoria caché revela el punto exacto en el que el inicio de la sesión está tomando una cantidad excesiva de tiempo,
Mage_Core_Model_Session_Abstract_Varien::start
como usted señaló correctamente:En el hilo al que se hace referencia, se sugirió que este efecto podría reducirse con un almacenamiento de sesión en memoria, pero no existen datos concretos que conozca que respalden la teoría. Si de hecho está usando memcached, entonces es lógico que el bloqueo de sesión a nivel de PHP impida que se otorguen futuras solicitudes al almacenamiento de la sesión hasta que se libere el bloqueo.
En general, esto solo se ve en las solicitudes que requieren acceso a la información de la sesión, por lo que diseñar su tema frontend será beneficioso para limitar la cantidad de acceso necesario para evitar posibles bloqueos cuando un usuario tiene otra pestaña u otra solicitud de larga duración en curso al decidir trasladarse.
HTH, salud.
fuente