Skip to main content

Entendiendo la limitación de velocidad en los informes de validación

por Jaime Iniesta
Señal de límite de velocidad en una carretera

Foto de Ludovic Charlet en Unsplash

Rocket Validator es un rastreador web distribuido capaz de recorrer tus sitios grandes, encontrando miles de páginas web y verificando cada una con el validador HTML del W3C y el validador de accesibilidad Axe Core, bajo demanda.

Con gran poder viene gran responsabilidad, así que como todos los rastreadores web, Rocket Validator siempre funciona dentro de los límites que defines:

  • Número máximo de páginas web a incluir en el informe. Puedes decidir cuántas páginas web quieres validar: típicamente empezarás con un número pequeño, digamos 100 páginas web, pero esto puede ser desde 1 hasta 5.000.
  • Qué verificar en cada página web. Tú decides si quieres verificar HTML usando el Validador W3C, accesibilidad usando Axe Core, o ambos en cada página web encontrada por el rastreador.
  • Velocidad de validación. Establece un límite en el número de peticiones por segundo que podemos hacer en tu nombre. Esto va desde un mínimo de 1, hasta un máximo de 15, dependiendo de tu nivel de suscripción.

Estos tres factores combinados van a determinar cómo tu sitio web es analizado por Rocket Validator, y también cuánto tiempo va a tardar un informe en completarse. Pero primero, vamos a entender qué sucede cuando envías un informe de validación de sitio.

Digamos que estás ejecutando un informe de sitio, verificando tanto HTML como accesibilidad en cada página web encontrada, y estableces un límite de velocidad de 1 petición/segundo.

En este caso, cuando cada página web es validada, va a recibir hasta 3 peticiones:

  • Una visita del rastreador para obtener más enlaces de ella (hasta que se alcance el máximo de páginas).
  • Una visita del validador HTML.
  • Una visita del validador de accesibilidad.

Configurar el informe para ejecutarse a 1 petición por segundo significa que cada página web necesitará 3 segundos para que sus validaciones empiecen. Eso son 20 páginas web por minuto, o 1.200 páginas web por hora. Así que para 5.000 páginas necesitará más de 4 horas para que todas las validaciones y el rastreo empiecen. Ver más abajo las tablas de comparación con más escenarios.

Usar sitemaps XML o de texto para omitir el rastreo

Rocket Validator encontrará automáticamente las páginas web internas de un sitio desde una URL de inicio, que puede ser cualquier URL de tu sitio, típicamente la página principal, gracias a nuestra función de Deep Crawling. Esto lo hace más fácil para ti pero también significa que vamos a necesitar solicitar más páginas web, para descubrir las páginas web internas.

Una buena forma de acelerar significativamente la validación del sitio es usar sitemaps XML o de texto. Si puedes proporcionar una lista de las páginas web exactas que quieres validar, Rocket Validator puede entonces omitir todo el proceso de rastreo, ya que no necesitamos descubrir las páginas web visitando todas las demás.

Omitir el rastreo significa que solo se necesitan 2 peticiones por página (validación HTML y de accesibilidad), así que son 2 segundos por página en lugar de 3, lo que son 30 páginas por minuto, 1.800 páginas web por hora. Así que para 5.000 páginas necesitaría menos de 3 horas para que todas las validaciones empiecen.

Incluso si no tienes una lista exhaustiva de todas tus páginas web, un sitemap siempre ayuda al rastreador dándole una lista de URLs a incluir. El resto, si es necesario, se puede encontrar mediante el rastreo profundo.

Hagamos algunos cálculos

Con estas ideas en mente, hagamos algunos cálculos para ver cómo los diferentes factores afectan el tiempo de ejecución del informe.

HTML + Accesibilidad + Deep Crawling, limitado a 1 petición/segundo

En este primer escenario dejamos que el rastreador profundo descubra las páginas web internas visitando cada una en busca de enlaces, y realizamos verificaciones tanto de HTML como de accesibilidad en cada página web encontrada, a la velocidad más lenta de 1 pet/seg. Esto necesitará 3 peticiones por página, así que a esa velocidad de validación significa 3 segundos por página.

Páginas web Peticiones totales Tiempo para empezar todas las validaciones
100 300 5 minutos
250 750 12 minutos
1.000 3.000 50 minutos
3.000 9.000 2 horas, 30 minutos
5.000 15.000 4 horas, 10 minutos

HTML + Accesibilidad + Deep Crawling, limitado a 3 peticiones/segundo

En este segundo escenario aumentamos el límite de velocidad a 3 peticiones/segundo. Seguimos usando el rastreo profundo y validando tanto HTML como accesibilidad en cada página web, así que aún toma 3 peticiones por página, pero como estamos ejecutando a 3x velocidad, toma 1/3 del tiempo anterior, eso son 1 segundo por página.

Páginas web Peticiones totales Tiempo para empezar todas las validaciones
100 300 1 minuto 40 segundos
250 750 4 minutos
1.000 3.000 16 minutos
3.000 9.000 50 minutos
5.000 15.000 1 hora, 23 minutos

HTML + Accesibilidad, limitado a 3 peticiones/segundo, omitiendo el rastreo

En este tercer escenario mantenemos el límite de velocidad de 3 pet/seg, y validamos tanto HTML como accesibilidad en cada página web, pero hemos deshabilitado el rastreo profundo y proporcionado un sitemap XML con todas las URLs, así que solo toma 2 peticiones por página. Eso significa que estamos haciendo 2/3 de las peticiones del escenario anterior, lo que reduce dramáticamente el tiempo necesario para completar el informe de validación.

Páginas web Peticiones totales Tiempo para empezar todas las validaciones
100 200 1 minuto
250 500 2 minutos
1.000 2.000 11 minutos
3.000 6.000 33 minutos
5.000 10.000 55 minutos

Efectos del límite de velocidad en informes similares

En este escenario final jugamos con el efecto de establecer un límite de velocidad más alto en el mismo tipo de informe (sin rastreo profundo, verificaciones HTML y A11Y, 2 pet/página).

Páginas web Límite de velocidad Tiempo para empezar todas las validaciones
1.000 1 pet/seg 33 minutos
1.000 3 pet/seg 11 minutos
1.000 5 pet/seg 6 minutos
1.000 10 pet/seg 3 minutos
1.000 15 pet/seg 2 minutos

Algunas reflexiones finales

Los cálculos anteriores dan solo una estimación muy aproximada de cómo los ajustes que estableces en un informe de validación afectan el tiempo necesario para ejecutar un informe de validación de sitio. En la práctica, hay más factores a tener en cuenta.

Estos cálculos tienen en cuenta cuándo empezarán las validaciones de páginas web, pero no cuánto tiempo tardan en completarse. Esto depende de otros factores:

  • Qué tan rápido puede responder tu servidor a nuestras peticiones.
  • Complejidad de las páginas que se están validando. Las páginas web simples se validarán más rápido, mientras que las páginas web con DOMs complejos, gran tamaño, o muchos problemas, tardarán más en procesarse.
  • Errores de red o protección DoS pueden afectar la validación. En estos casos nuestros rastreadores de validación lo reintentarán más tarde.

Encontrarás el punto óptimo dependiendo de tu caso de uso. Nuestro flujo de trabajo recomendado cuando trabajas con un sitio nuevo es:

  • Primero, ejecuta un informe grande cubriendo verificaciones tanto de HTML como de Accesibilidad, a 3 peticiones/segundo. Esto te dará una vista panorámica de los principales problemas en el sitio.
  • Después de eso, trabaja en pequeños incrementos en secciones del sitio. Tal vez enfócate primero en corregir los problemas de HTML, y después pasa a los problemas de accesibilidad.
  • Para el mantenimiento, establece una programación de validación mensual o semanal para que tu sitio sea validado periódicamente, así serás advertido si se encuentran nuevos problemas.

Para la mayoría de los casos, una velocidad de validación de 3 a 5 peticiones/segundo es lo suficientemente buena para obtener resultados rápido sin sobrecargar los servidores.

¡Esperamos que esto ayude a optimizar tu flujo de trabajo de validación!

¡No dudes en contactarnos si quieres compartir tus consejos de validación!

¿Listo para validar tus sitios?
Inicia tu prueba gratuita hoy.