pruebas servidor revista foto dng

23
Pruebas de rendimiento servidores Foto DNG

Upload: revista-foto-dng

Post on 10-May-2015

179 views

Category:

Technology


0 download

DESCRIPTION

Pruebas de rendimiento del servidor de la revista Foto DNG (www.fotodng.com) con Nginx y fastcgi cache, PHH 5.5 y MariaDB en un entorno con WordPress. Entrada disponible en nuestra web en http://www.fotodng.com/pruebas-de-rendimiento-en-servidor-de-foto-dng-2840.html

TRANSCRIPT

Page 1: Pruebas Servidor Revista Foto DNG

Pruebas de rendimiento servidores Foto DNG

Page 2: Pruebas Servidor Revista Foto DNG

Foto DNG desde el inicioServidor en Serverpronto con Apache, MySQL y PHP:● FreeBSD 5.3 256Mb. de RAM (2006)● FreeBSD 7.1 2Gb. de RAM (Marzo 2009)Cambio a servidor en OVH con Nginx, MySQL y PHP (Diciembre 2009):● Ubuntu Server varias versiones, desde 4Gb. de

RAM el primero hasta 16Gb. de RAM el actual.

Page 3: Pruebas Servidor Revista Foto DNG

Foto DNG desde el inicio● Diciembre del 2007, primera entrada del Blog

de Foto DNG (en Blogger).● Agosto del 2011, el Blog pasa a nuestros

servidores, con WordPress bajo el directorio /blog/.

● Junio del 2013, la web de Foto DNG y el Blog se integran en uno, bajo WordPress y plug-ins propios (el mayor cambio interno desde el nacimiento de la web de Foto DNG).

Page 4: Pruebas Servidor Revista Foto DNG

Próximos cambios y pruebas en Foto DNG

Page 5: Pruebas Servidor Revista Foto DNG

Foto DNG en virtual serverGracias a Miguel Ángel, amigo y CEO de On Services,

llevamos algo más de un mes realizando pruebas sobre una máquina virtual (con 8Gb. de RAM)

Page 6: Pruebas Servidor Revista Foto DNG

Foto DNG en virtual server● Cambio de Nginx v 1.2.1 a 1.4.1 con módulo

fastcgi_cache_purge (repositorio ppa:brianmercer/nginx).

● Cambio de PHP (fpm) de v 5.4.6 a 5.5.6, Zend Engine de 2.4.0 a 2.5.0 (repositorio ppa:ondrej/php5).

● En vez del uso de la extensión de PHP APC (v3.1.13) se cambia al interno de PHP 5.5 que es Zend OPcache v7.0.3-dev.

● Cambio de MySQL v5.5.35 a MariaDB v5.5.34

Page 7: Pruebas Servidor Revista Foto DNG

Foto DNG en virtual server● Instalación de la extensión de WordPress Nginx-helper

para la administración de caché de Nginx● Uso de W3Total Cache,en esta instalación sin caché de

páginas en el servidor (que relegamos a Nginx).● Optimización de MariaDB con los scripts mysqlreport,

mysqltuner y tunning-primer.● Optimización de pool de php5-fpm.

Page 8: Pruebas Servidor Revista Foto DNG

Ventajas obtenidas

● Si no se ejecuta PHP, las páginas siguen mostrándose debido a que se sirven desde caché de Nginx mediante fastcgi_cache

● Al servirse en la mayoría de los casos páginas HTML sin el uso de PHP, aumenta considerablemente el número de páginas que se pueden servir por segundo.

Page 9: Pruebas Servidor Revista Foto DNG

Las pruebas del servidor

Page 10: Pruebas Servidor Revista Foto DNG

Pruebas realizadas con Apache Benchmark

● Las pruebas se han realizado con 50.000 peticiones al nuevo servidor y sin la opción -k de Keep Alive.

● Las pruebas se han realizado desde un servidor alternativo en OVH (2Gb. de RAM) hacia el nuevo servidor en On Services.

● Se han realizado 10 pruebas desde 100 usuarios simultáneos hasta 1.000 usuarios simultáneos.

● Se han realizado tres pruebas contra el servidor actual en OVH (desde 100 hasta 300 usuarios simultáneos).

Page 11: Pruebas Servidor Revista Foto DNG

Pruebas realizadas con Apache Benchmark

El comando ejecutado ha sido:

# ab -c 100 -n 50000 http://nuevo.server.com/ > resultados100.txt# ab -c 200 -n 50000 http://nuevo.server.com/ > resultados200.txt….

Page 12: Pruebas Servidor Revista Foto DNG

Pruebas realizadas con Apache Benchmark

Servidor Actual:● Con 100 peticiones simultáneas ha producido 5 fallos.● Aumentando las peticiones simultáneas empieza a

fallar php-fpm y fallar la mayoría de las páginas servidas.

● El servicio php-fpm se vuelve a ejecutar gracias a Monit.

Page 13: Pruebas Servidor Revista Foto DNG

Pruebas realizadas con Apache Benchmark

Servidor de Pruebas On-Services:● Hasta 600 peticiones simultáneas no se han producido

fallos (104 fallos en 600).● Con 1.000 peticiones simultáneas los fallos se disparan

hasta 49.036 (de las 50.000 peticiones), por lo que para poder apreciar la gráfica de fallos, sólo se tienen en cuenta los valores de hasta 900 peticiones simultáneas.

Page 14: Pruebas Servidor Revista Foto DNG

Resultados Apache Benchmark

Datos obtenidos

Page 15: Pruebas Servidor Revista Foto DNG

Resultados Apache BenchmarkFallos con peticiones concurrentes

Page 16: Pruebas Servidor Revista Foto DNG

Resultados Apache BenchmarkMedia de tiempo por petición

Page 17: Pruebas Servidor Revista Foto DNG

Resultados Apache BenchmarkMedia de tiempo por petición (media entre concurrentes)

Page 18: Pruebas Servidor Revista Foto DNG

Las conclusiones preliminares

Page 19: Pruebas Servidor Revista Foto DNG

Conclusiones

● Con la nueva configuración (aún en pruebas y sin estar en producción) parece que se aumenta considerablemente el rendimiento y la capacidad de carga soportada, a pesar de tener la mitad de RAM.

● El consumo de RAM con 50.000 peticiones y 1.000 simultáneas es mínimo.

● El servidor sólo deberá servir una petición por página, ya que las imágenes de posts y concursos se sirven desde el CDN de JetPack.

Page 20: Pruebas Servidor Revista Foto DNG

Conclusiones

● Los archivos estáticos css, javascript e imágenes del tema se sirven desde el CDN AWS.

● Otros archivos como las portadas de cada número se sirven desde el CDN de Google App Engine.

● La página servida va comprimida con gzip, con keep-alive y cabeceras de caché en el cliente.

Page 21: Pruebas Servidor Revista Foto DNG

Conclusiones

● Para servir 50.000 peticiones con 500 concurrentes se ha tardado 92,24 segundos (542.06 peticiones por segundo).

● Con esta carga de peticiones se podrían servir más de 32.000 páginas por minuto (los demás archivos, css, js, imágenes, etc. se sirven desde otros servers), casi 2 millones de páginas por hora y más de 46 millones de páginas por día.

Page 22: Pruebas Servidor Revista Foto DNG

Conclusiones

Evidentemente no podemos hacer estos cálculos tan simples y lineales, y ante estas cifras habría

que plantear otros posibles escenarios, ojalá nos viésemos en la necesidad de tener que hacerlo.

Page 23: Pruebas Servidor Revista Foto DNG

Pueden comentar, discutir, rebatir o lo que quieran en

el post donde se ha publicado esta presentación en:

http://www.fotodng.com/pruebas-de-rendimiento-en-

servidor-de-foto-dng-2840.html

Carlos Longarela.

Revista Foto DNG

http://www.fotodng.com

https://twitter.com/fotodng

Agradecimiento especial a

Miguel Ángel de On Services

http://www.onservices.es/