2012-02-14 14 views
8

Sto provando a trovare dove si sta consumando il mio tempo di caricamento. Ho aggiunto il tracciamento di quasi tutto quello che viene in mente e v'è una 200ms mancanti (che è oltre il 50% del carico totale)Load Time on asp.net page non può essere contabilizzato per

Come posso spiegare questo tempo mancante

Description      Duration(ms) with Children(ms) from start(ms) 
    http://localhost:80/default.aspx 320.8  357.3    +0.0 
    CreateControlCollection   0.0   0.0    +27.2 
    OnPreInit       0.1   0.1    +27.2 
    GetVaryByCustomString    0.0   0.0    +227.0 
    Control OnInit      0.0   0.0    +232.4 
    Control OnInit      0.0   0.0    +232.4 
    Control OnInit      0.0   0.0    +234.2 
    Control OnInit      0.0   0.0    +234.2 
    Control OnInit      0.0   0.0    +234.2 
    GetVaryByCustomString    0.0   0.0    +234.6 
    Control OnInit      0.0   0.0    +234.9 
    Control OnInit      0.0   0.0    +234.9 
    GetVaryByCustomString    0.0   0.0    +235.0 
    GetVaryByCustomString    0.0   0.0    +235.3 

risposta

2

Sembra come il disperso: il tempo viene consumato tra PreInit (un evento solo pagina) e Init per un controllo. Alcune idee:

  1. L'inizializzazione del controllo è un possibile colpevole. L'evento Init del controllo viene generato dopo che l'inizializzazione del controllo è stata completata, non prima.
  2. Stai utilizzando temi o skin ASP.NET? In tal caso, vengono applicati tra PreInit e Init.
  3. Ricordare che gli eventi Init sono attivati ​​dal basso verso l'alto; bambini prima dei genitori.
  4. I problemi di threading sono una possibile causa di mancanza di tempo. Le tue misurazioni sono da un sistema altrimenti inattivo? Ci sono operazioni di I/O che si verificano all'inizio del ciclo di vita della pagina?
  5. Stai utilizzando le pagine master? In tal caso, tieni presente che sono implementati come controllo figlio della pagina.
Problemi correlati