
Si instalaste magento y te anda como una tortuga, acá te paso algunas sugerencias para aumentar considerablemente la velocidad de tu sitio.
¿Qué es Magento?
Magento es un sistema de ecommerce online para crear sitios de ventas por internet. Una de las características principales de magento es que se utiliza para sitios de gran tamaño. Empresas líderes utilizan magento para realizar sus sistemas de ecommerce.
Otras alternativas de ecommerce conocidas son OS Commerce, Prestashop y Virtuemart (extensión de Joomla). La diferencia principal con estas alternativas se basa en la complejidad y volumen del sitio web ha desarrollar. Es decir, si queremos hacer algo sencillo conviene usar estas soluciones, pero si pensamos en un sitio web robusto y que tenga miles y miles de productos debemos pensar en Magento.
Aclaración agregada por sugerencia de @krafty
1) Instalar Fooman Speedster
Comprime JS y CSS en tu tienda, diferencia notable de velocidad. FREE
http://www.magentocommerce.com/extension/457/fooman-speedster
2) Activar Gzip Compression en .htaccess
Descomentar (quitar el #) en el .htacess: (Linea 52) la siguiente regla:
#php_flag zlib.output_compression on
3) Instalar APC or Xcache
APC – http://pecl.php.net/package/APC
Xcache – http://xcache.lighttpd.net/
Se tiene que instalar a nivel de servidor (Tu sysdamin en tu dedicado, o preguntar directamente al hosting)
Una vez instalado debemos localizar el local.xml normalmente en /home/yoursitename/public_html/app/etc/local.xml
Y añadir justo debajo:
<global>
Activando el APC caché, se ha comprobado que su velocidad asciende a menos de la mitad del tiempo de carga.
<cache>
<backend>apc</backend>
<prefix>alphanumeric</prefix>
</cache>
Una vez instalado el APC, haría falta modificar el APC.shm.size a 128 esto permitirá almacenar muchos más datos en la cache.
Aqui algunas pruebas de carga con el APC activado:
http://talks.php.net/show/phpbcn/12
Un comparativa de carga entre la pagina 11 y la 12.
4) “Asegurarse que en tu apache tienes el KeepAlives activado.
Es un truco que permite a través de una simple conexión TPC servir multiples peticiones HTTP. Esto reduce el tiempo de descarga de los diferentes ficheros (HTML, JavaScript, images) for a website.”
Este paso igual que el anterior se ha de hacer a través del hosting o con vuestro sysadmin.
5) ”Modificar la configuración de tu servidor MySQL para sacarle partido a la RAM de tu máquina. La mayoría de distribuciones linux son conservativas en cuanto al uso del Hardware. Most. Un ejemplo de my.cnf seria el siguiente:
key_buffer = 512M
max_allowed_packet = 64M
table_cache = 512
sort_buffer_size = 4m
read_buffer_size = 4m
read_rnd_buffer_size = 2m
myisam_sort_buffer_size = 64m
tmp_table_size = 128m
query_cache_size = 96m
query_cache_type = 1
thread_cache_size = 8
max_connections = 400
wait_timeout = 300
De nuevo solicitar estos cambios a tu host o al sysadmin correspondiente.
6) “Usar más la memória para ficheros temporales que el disco duro para el directorio var de Magento. Magento abusa del disco duro de nuestras maquinas para albergar la cache y sesiones y todos sabemos que la parte más lenta de una maquina es el IO de nuestro disco duro. Por lo que sería conveniente albergar todo ese contenido en memoria en vez de en disco”
Ejemplo:
/var/www/domain.com/var/cache/ y
/var/www/domain.com/var/session/
Para cache podnríamos un max de 256MB RAM y para sessions 64MB RAM de la siguiente forma:
mount -t tmpfs -o size=256M,mode=0744 tmpfs /var/www/domain.com/var/cache/
mount -t tmpfs -o size=64M,mode=0744 tmpfs /var/www/domain.com/var/session/
Esta configuración se perderá cada vez que reinicias por lo que tendremos que insertar estas dos lineas en /etc/fstab:
tmpfs /var/www/domain.com/var/cache/ tmpfs size=256,mode=0744 0 0
tmpfs /var/www/domain.com/var/session/ tmpfs size=64,mode=0744 0 0
7) Deshabilitar el open_basedir del vhost.conf de nuestro servidor. Se dice que mejora la velocidad, aunque yo no lo he percibido.
/****************************************************************************************/
Espero que les sirva, cualquier cosa avisen. Una cosa más. Por más optimizaciones que hagamos, si estamos en un shared hosting con muchas cuentas, la velocidad no va a variar mucho.
Suerte