Estoy tratando de mejorar el rendimiento de Magento (tarde o temprano "MageDev" llegó a este punto :)
Investigué un poco y encontré muchas guías buenas, pero no homogéneas.
Lo que obtuve es que:
- MemCache o Redis son un sistema de caché genérico, almacenan datos en caché y se pueden integrar directamente con Magento ( local.xml )
- APC es un caché para el código php en sí solo puede integrarse a nivel de servidor.
- Varnish es un proxy inverso, almacena en caché la respuesta solo se puede integrar a nivel de servidor. (hay una extensión para Magento, trementina, pero no estoy seguro de qué hace exactamente)
Después de toda esta buena lectura, todavía estoy un poco confundido sobre qué de los sistemas de caché anteriores es posible usar en combinaciones, por ejemplo:
- MemCache + APC?
- Redis + APC?
- ¿Puedo agregar Barniz a una de las configuraciones anteriores?
Para que quede claro, la pregunta no es sobre cómo configurar Magento o el servidor, sino cuáles son las posibilidades permitidas y alguna autorización sobre cómo mezclar sistemas de caché. (además de eso, si alguien puede venir con una buena recomendación, lo agradecería).
Respuestas:
Ya has entendido la mayor parte.
El backend de caché, el almacén de sesión, el caché de código operativo, el caché de página completa y el caché de proxy inverso son completamente diferentes.
Puede usar diferentes tecnologías para todos y puede usar TODOS simultáneamente (incluido Varnish y un FPC)
Backends de caché
Solo puede usar un backend de caché.
Contrariamente a la creencia popular, el uso de una memoria caché basada en memoria no mejorará el rendimiento. Pero superará algunos defectos fatales en el almacenamiento en caché basado en archivos predeterminados de Magento.
Al escribir este mensaje, Redis es mi recomendación.
Tiendas de sesiones
Solo puede usar una tienda de sesión.
Contrariamente a la creencia popular, el uso de una tienda de sesión basada en memoria no mejorará el rendimiento.
Al escribir este mensaje, Redis es mi recomendación.
OpCode Cache
En realidad, puede instalar múltiples cachés de código de operación, pero no se recomienda, ni esperaría ver ninguna ganancia.
Mis recomendaciones están entre paréntesis.
No se requiere instalar ningún módulo para aprovechar esto.
Caché de proxy inverso
Puede usar múltiples servidores proxy inversos, y si bien hacerlo es complejo y propenso a la elongación de la memoria caché, puede tener ventajas (es decir, para evitar el estampado durante una descarga de memoria caché).
Use uno cuando sea necesario (es decir, no para acelerar un sitio lento, sino para reducir el uso de recursos en un sitio rápido).
Para aprovechar un proxy inverso, necesita habilitar el lado del servidor y necesita un módulo para Magento.
El motivo del módulo es ayudar a controlar la lógica de almacenamiento en caché (es decir, decirle a la memoria caché lo que debe y no debe almacenar en memoria caché) y también administrar el contenido de la memoria caché (es decir, activar las purgas de la memoria caché).
No recomiendo ninguno a menos que tenga una comprensión total de lo que está haciendo. Los servidores proxy mal configurados pueden romper la información del encabezado, causar pérdida de sesión, compartir sesiones, contenido obsoleto, aplicar límites adicionales al tiempo de carga / almacenamientos intermedios, consumir recursos adicionales, etc.
Caché de página completa
Use uno cuando sea necesario (es decir, no para acelerar un sitio lento, sino para reducir el uso de recursos en un sitio rápido).
Contrariamente a la creencia popular, puede (y debe) usar un FPC junto con un caché de proxy inverso. Los dos resuelven problemas diferentes y tienen capacidades diferentes.
Los FPC pueden aprovechar más inteligencia, porque tienen acceso directo a la sesión de los usuarios y al núcleo de Magento, mientras que un proxy inverso no es consciente de la aplicación (es bastante tonto en la forma en que funciona), por lo que los dos se complementan entre sí, no compiten entre sí .
Es decir. No pienses en Barniz o FPC, piensa en Barniz y FPC.
fuente
mod_pagespeed
? por cierto genial y clara respuesta thxIría por Redis + APC con Varnish en la parte superior.
'¿Por qué Redis' preguntas? Lea esta excelente respuesta SO . Redis básicamente reemplaza el sistema de almacenamiento en caché basado en archivos estándar de Magento. Dado que Redis es más rápido, le dará una mejora en la velocidad.
El barniz en realidad no tiene mucho que ver con el funcionamiento interno. Se coloca en la parte superior y almacena en caché el contenido estático, por lo que nunca llega a Magento como una solicitud. Excepto por las partes perforadas que es.
Mientras que Varnish solo se centra en el almacenamiento en caché de la interfaz, Redis también acelerará los otros tipos de caché, como el EAV y los cachés de configuración.
Opcionalmente, puede consultar algunas extensiones de caché de página completa para Magento en lugar de Varnish. Si bien no es tan rápido, generalmente es más fácil de implementar y no depende de software adicional (como Varnish)
fuente