2012-09-19 82 views
5

enter image description herepara principiantes perfiles Qn - ASP .NET MVC + Mini-Profiler + Chrome Herramientas de Desarrollo

Dos secciones destacadas anteriormente.


primero - Mini-Profiler decirme cuánto tiempo de ejecución de un controlador/acción tiene (llamado a través de AJAX)

87ms


segundo - Chrome Web Inspector diciendo me la cantidad de tiempo que la misma solicitud ajax está tomando para completar

535 ms


Usando vistazo, pensé que la ejecución de los otros eventos del ciclo de vida (base/filtros) tomó ~ 22 ms.

Buscando una guía para saber a dónde irá el resto del tiempo.

Gracias.


Editar

Esto es casi constante (varianza es de ~ 10 - 20 m en ambos valores - Mini-Profiler y Chrome Inspector).

Estos resultados son para una solicitud en línea contra un servidor de producción (VPS) que ejecuta IIS 7.5. Cuando estos números se miden en una máquina de desarrollo (localhost ejecutando IIS express), la diferencia en los resultados de Mini-Profiler y Chrome Inspector no es tan significativa.

+1

¿Esto es consistente? ¿Esto sucede cuando se ejecuta directamente contra iis en comparación con iis express o vs servidor web? –

+0

Agregó un Editar ... – Sameet

Respuesta

4

Dado que estas solicitudes van en contra de un recurso en línea, debe justificar la latencia.

Por ejemplo tomar esta:

image

Horario del servidor no es más que 118ms, sin embargo, la búsqueda de DNS tarda 598ms, la conexión de toma otros 205ms y la respuesta sólo se vuelve + 1173ms después de visitar la página. Finalmente, el DOM solo comienza a renderizar 1,27 segundos.

Los bits del servidor solo representan el tiempo que se pasa en el servidor dentro de su aplicación.

Debe agregarse a eso.

  1. Tiempo que lleva resolver dns.
  2. tiempo que se necesita para conectar (si no hay mantenimiento de conexión está en su lugar)

[Tiempo de espera]

  1. tiempo que se tarda en enviar el paquete TCP pidiendo el recurso
  2. arriba en el servidor web/proxy front end
  3. Hora del servidor (el número rojo brillante)
  4. Tiempo que tarda el primer paquete TCP en encontrar el camino de vuelta.

[/ tiempo de espera]

  1. tiempo que tarda el resto de los paquetes para encontrar el camino de regreso a ti. (Lea sobre las ventanas de congestión TCP)
  2. tiempo que tarda el navegador para analizar la materia se vuelve
  3. tiempo que se necesita que hacen

(y luego está la interdependencia de JavaScript y CSS que soy no voy a tocar aquí)

+0

¿Cómo averiguo las duraciones de búsqueda de dominio y conexión para mi llamada ajax? Estos valores no son visibles a través de Mini-Profiler para la llamada. – Sameet

+0

hasta que http://www.w3.org/TR/2011/WD-resource-timing-20110524/ esté en los navegadores web, no es posible obtener datos de grano fino. solo puedes obtenerlo desde la línea de tiempo de firbug o chrome, etc. –

+0

Firebug me dice que la búsqueda y conexión de DNS no demora nada. Todo el tiempo se pasa esperando. ¿Esto significa que todo este tiempo está "en el cable"? Si también incluye algún tiempo de "sobrecarga" en el servidor web como mencionó, ¿hay alguna forma de averiguar exactamente hacia dónde se dirige? – Sameet

Cuestiones relacionadas