Economista

Páginas: 13 (3148 palabras) Publicado: 22 de marzo de 2012
Afinando ...

Copyleft © Alejandro Castán Salinas http://www.xtec.net/~acastan/textos/ Creative Commons by-nc-sa 2.5

Afinando LAMP
Realizar cambios en la configuración de nuestro servidor para mejorar el rendimiento:
  

Cambios en el hardware Cambios en el sistema operativo: Linux Cambios en los servicios e intérpretes: Apache, PHP, MySQL Cambios en las aplicaciones



¿Cómotrabaja LAMP?

aplicaciones php APACHE PHP LINUX HARDWARE MySQL

¿Cómo trabaja LAMP?
contenido estático: html, imágenes, ... contenido dinámico: aplicaciones php Clientes APACHE LINUX HARDWARE PHP MySQL

¿Cómo trabaja LAMP?

Medir el rendimiento
 

Medir para saber cuál es el cuello de botella. Medir para hacer predicciones sobre el futuro, cuando el número de peticiones alservidor crezca. Medir el rendimiento antes y después de cada cambio, para ver qué ha mejorado. Los cambios se deben medir de uno en uno.



Medir el rendimiento: monitor del sistema, top, ...

Medir el rendimiento: cURL


curl mide el tiempo de respuesta de un servidor web ante la petición de un único elemento:
$ curl ­o /dev/null ­s ­w %{time_connect}:%{time_starttransfer}:%{time_total}\  http://www.laquimera.org 0.081:0.272:0.779



Procesar petición y comenzar a enviar datos = 0.272 – 0.081 = 0.191 segundos Enviar todos los datos = 0.779 - 0.272 = 0.507 segundos



Medir el rendimiento: Firefox Tamper Data


https://addons.mozilla.org/es-ES/firefox/addon/966

Medir el rendimiento: Apache
Apache HTTP server benchmarking tool (ab) es una utilidad incluida enApache con la que hacer pruebas de carga sobre servidores web.
$ ab ­n 1000 ­c 5 http://www.servidor.com/pagina.html Time taken for tests:   42.907696 seconds Failed requests:        0 Total transferred:      584000 bytes Requests per second:    23.31 [#/sec] (mean) Time per request:       214.538 [ms] (mean) Time per request:       42.908 [ms] (mean, across concurrent requests)Transfer rate:          13.28 [Kbytes/sec] received Connection Times (ms)               min  mean[+/­sd] median   max Connect:       89  105 189.1     92    3089 Processing:    94  107  34.2    101     669 Waiting:       92  105  29.1     99     445 Total:        184  213 191.9    194    3192

Medir el rendimiento: MySQL
Toman ficheros con peticiones e interrogan el servidor de base de datos el número de veces quequeramos y con el número de conexiones concurrentes que deseemos.


MySQL Super Smack
http://vegan.net/tony/supersmack/



MyBench
http://jeremy.zawodny.com/mysql/mybench/

Medir el rendimiento: más ...


“Easy system monitoring with SAR”
http://www.ibm.com/developerworks/aix/library/au-unix-perfmonsar.html



“Expose Web performance problems with the RRDtool”http://www.ibm.com/developerworks/edu/dw-esdd-webperfrrd-i.html



“Monitoring Virtual Memory with vmstat”
http://www.linuxjournal.com/article/8178

Afinar el hardware
No es el objetivo de esta guía. Según donde esté el cuello de botella podemos cambiar:
    

CPU más rápida, con varios núcleos, 64 bits. Aumentar la memoria RAM. Discos duros más rápidos, RAID. Ancho de banda de conexión alexterior. Más máquinas: separar servidor web y servidor BBDD, clúster+balanceo carga.

Afinar las aplicaciones
No es el objetivo de esta guía. Depende de cada problema. Los programadores pueden:
 

Optimizar el código del programa PHP. Optimizar la estructura de tablas y las consultas al servidor de BBDD.

Afinar Linux: TCP/IP
$ sudo vim /etc/sysctl.conf# Activa las TCP syncookies contra los ataques de SYN Flooding net.ipv4.tcp_syncookies = 1 # Aumenta el tamaño de ventana (paquetes enviados antes de un ACK) net.ipv4.tcp_window_scaling = 1 # Incrementa el tamaño de los buffers de llegada y envío de paquetes. # Permiten a las aplicaciones del servidor tomar datos más rápidamente, # y al cliente enviar más datos aunque el servidor esté ocupado net.core.rmem_max = 16777216...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Economista
  • Economista
  • Economista
  • Economico
  • Economico
  • Economica
  • economista
  • economico

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS