Código de JavaScript - Monitor de Rendimiento Entre Funciones

Monitor de Rendimiento Entre Funcionesgráfica de visualizaciones


JavaScript

Actualizado el 16 de Noviembre del 2015 por Alfredo (Creado el 14 de Noviembre del 2015)
780 visualizaciones desde el 14 de Noviembre del 2015. Una media de 14 por semana
Determina la duración en segundos de cada función javascript. Si quieres determinar el tiempo que demora en ejecutar todo tu código y encontrar donde tienes problemas de desempeño puedes utilizar el código para determinar donde se está demorando.

Se crea un nuevo objeto monitor:

var monitor = Monitor();

Dentro de la primera que quieres empezar a monitorear invocas al método Iniciar(). Ejm. monitor.Iniciar();

En cada función que se sigue llamando y quieres monitorear el tiempo transcurrido marcas un lap y especificas el nombre de la función. Ejm. monitor.Lap("funcionPrueba");

En tu última función o llamado invocas finalizar y se te despliega actualmente un alert con el tiempo transcurrido entre funciones y el tiempo total que demoraron todas las funciones en ejecutarse. Ejm. monitor.Finalizar();

Esto ayuda mucho a determinar si las llamadas a servidor via Ajax están teniendo un impacto en el desempeño de tu aplicación o es algo dentro de las mismas funciones javascript. Este código es bien ligero y no debe afectar el rendimiento de tu aplicativo.

Que lo disfruten.

1.0.0

Actualizado el 16 de Noviembre del 2015 (Creado el 14 de Noviembre del 2015)gráfica de visualizaciones de la versión: 1.0.0
781 visualizaciones desde el 14 de Noviembre del 2015. Una media de 14 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
function Monitor()
{
    this.TiempoInicial;
    this.TiempoFinal;
    this.Laps = [];
    this.Iniciar = function ()
    {
        this.TiempoInicial = new Date();
    }
    this.Finalizar = function ()
    {
        var ahora = new Date();
        var tiempoTranscurrido = (ahora.getTime() - this.TiempoInicial.getTime()) / 1000;
        var funciones = "";
        for (var i = 0; i < this.Laps.length; i++)
        {
            funciones += this.Laps[i].Nombre + ": " + Number(this.Laps[i].Tiempo).toFixed(4) + " (";
            if (i == 0)
                funciones += "0";
            else
                funciones += Number(this.Laps[i].Tiempo - this.Laps[i - 1].Tiempo).toFixed(4);
 
            funciones +=")\r\n";
        }
        funciones += "Total: " + tiempoTranscurrido;
        alert(funciones);
    }
    this.Lap = function (NombreFuncion)
    {
        var ahora = new Date();
        var tiempoTranscurrido = (ahora.getTime() - this.TiempoInicial.getTime()) / 1000;
 
        this.Laps.push({ Nombre: NombreFuncion, Tiempo: tiempoTranscurrido });
    }
}



Comentarios sobre la versión: 1.0.0 (0)


No hay comentarios
 

Comentar la versión: 1.0.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s3345