diagnóstico del rendimiento
TRANSCRIPT
![Page 1: Diagnóstico Del Rendimiento](https://reader036.vdocuments.site/reader036/viewer/2022071706/55c06d47bb61eb8e3e8b4712/html5/thumbnails/1.jpg)
Diagnóstico del rendimiento en aplicaciones Web
Sin un buen diagnóstico no hay cura posible
![Page 2: Diagnóstico Del Rendimiento](https://reader036.vdocuments.site/reader036/viewer/2022071706/55c06d47bb61eb8e3e8b4712/html5/thumbnails/2.jpg)
¿Porqué es importante?
Los Servidores Web tienen un límite en el número de peticiones concurrentes (Apache por defecto 256, Tomcat 200, etc)
No es recomendable hacer crecer demasiado el número de conexiones concurrentes por límites en el sistema operativo
Una reducción de un 50% del tiempo en las peticiones más comunes nos duplica el número de peticiones por segundo
![Page 3: Diagnóstico Del Rendimiento](https://reader036.vdocuments.site/reader036/viewer/2022071706/55c06d47bb61eb8e3e8b4712/html5/thumbnails/3.jpg)
¿Cómo se consigue?
Mediante caracterización del tráfico real para poder evaluar la misma distribución de accesos. (30% imágenes, 20% PHP sin base de datos, 50% PHP tocando base de datos)
Recogiendo datos mediante un Profiler adecuado a la aplicación (PHP, Java, .Net, etc…)
Analizando los datos e identificando qué elementos proporcionarían una mejora más sustancial (optimizamos ROI en desarrollo)
![Page 4: Diagnóstico Del Rendimiento](https://reader036.vdocuments.site/reader036/viewer/2022071706/55c06d47bb61eb8e3e8b4712/html5/thumbnails/4.jpg)
¿Qué es un Profiler?
Una herramienta que analiza el código ejecutado y nos da datos sobre tiempos y usos de cada función.
Ejemplo de webgrind, un visualizador de los datos extraidos por el profiler
![Page 5: Diagnóstico Del Rendimiento](https://reader036.vdocuments.site/reader036/viewer/2022071706/55c06d47bb61eb8e3e8b4712/html5/thumbnails/5.jpg)
¿Tenemos los datos, ahora qué?
Identificar qué páginas y/o llamadas a función gastan más recursos
Identificar qué llamadas hacen uso de recursos finitos (conexiones a la BBDD, WebServices, disco, envío de correo, etc)
Analizar si son mejorables y en este caso dedicar los recursos a ello mejorando código, reduciendo o controlado llamadas a BBDD
![Page 6: Diagnóstico Del Rendimiento](https://reader036.vdocuments.site/reader036/viewer/2022071706/55c06d47bb61eb8e3e8b4712/html5/thumbnails/6.jpg)
Entregable del diagnóstico
Informe de qué páginas o llamadas son más susceptibles de mejora
Estrategia de mejora recomendada para cada una y estimación de la mejora local y global (ganamos un 50% optimizando esta llamada pero representa sólo un 5% global)
Identificación de cuellos de botella en el acceso hacia otros servicios (BBDD, WebServices, etc)
Datos intermedios utilizados (caracterización de los usuarios, resultados no analizados de las herramientas, etc…)
![Page 7: Diagnóstico Del Rendimiento](https://reader036.vdocuments.site/reader036/viewer/2022071706/55c06d47bb61eb8e3e8b4712/html5/thumbnails/7.jpg)
¡Muchas gracias!
Sergi Morales, CTO e: [email protected] w: www.expertosenti.com t: 668897684 (6688-XPNTI) l: www.linkedin.com/in/sergimorales