Categorías: Actualidad

El ataque de los robots

Imagina que tienes una web y que te has currado el SEO y SEM de la misma, de manera que sales en todos los buscadores en los primeros puestos.

Tu web tiene muchos accesos, estás muy contento porque tu negocio funciona. Pero de repente, un día, la web empieza a ir muy lenta. Revisas el servidor y ves que la CPU está al 100%.

Vas corriendo a ver tus estadísticas de usuarios activos y ves que no has tenido un aumento tal que justifique ese incremento de consumo de recursos. Revisas las funcionalidades nuevas que has podido añadir a la web, pero no encuentras que eso pueda provocar un aumento tan considerable en el uso de los recursos del servidor. Revisas cachés, tiempos de respuesta y nada.

Por último y ya a la desesperada empiezas a revisar los logs del servidor web y allí los ves, como una plaga campando a sus anchas y comiendo recursos como unos locos: los robots.

 

Aprender a programar robots.txt es tu tabla de salvación

 

Los robots o crawlers, son software que usan las empresas, principalmente de buscadores como Google, Bing o Yahoo, para rastrear e indexar las webs que hay en Internet.

El problema con los robots es que no tienen el comportamiento típico de un usuario y por tanto es posible que tú no hayas previsto la secuencia o cantidad de accesos que puedan hacer. A parte de que son capaces de recorrer más páginas por segundo que un usuario normal.

Para defenderte de los accesos masivos de los robots tienes una primera línea de defensa muy fácil de implementar: robots.txt. Ese sencillo fichero que se aloja en la raíz de tu web puede hacer un trabajo extraordinario, así como las 3 leyes de la robótica de Isaac Asimov. No voy a decir todos, pero sí la mayoría de los robots respetan ese fichero y lo tienen en cuenta.

Para empezar podemos indicar en robots.txt qué páginas no queremos que indexe:

User-agent: *

Disallow: /pagina-que-no-quiero-indexar.html

Disallow: /directorio-que-no-quiero-que-indexe/

Con esto pareamos cierto tráfico, pero la línea que realmente hace que los robots no machaquen todo el rato nuestra web es la siguiente:

User-agent: *

Crawl-delay: 5

Aquí lo que hacemos es definirle al robot el tiempo que tiene que esperar entre una petición y otra, así logramos que el ratio de peticiones baje y no acabe con el rendimiento del servidor.

Antes de que te pongas manos a la obra es conveniente que sepas que los cambios que se realizan en robots.txt no son inmediatos, tienen que propagarse y suelen tardar varias horas en ser efectivos.

Fco. Javier Martín

Compartir
Publicado por
Fco. Javier Martín

Entradas recientes

IA y ciberseguridad: la nueva defensa contra ataques en redes empresariales

Durante años, la ciberseguridad ha sido una carrera desigual. Mientras quienes delinquen afinaban sus tácticas,…

Hace 4 días

¿Está tu infraestructura preparada para una caída externa?

El pasado 28 de abril muchas organizaciones vivieron una situación poco habitual: un apagón eléctrico…

Hace 2 semanas

DESPACE: la plataforma visual para construir espacios de datos sin complicaciones

Hoy en día, la mayoría de las empresas trabajan con datos dispersos en múltiples sistemas:…

Hace 3 semanas

Cómo detectar anomalías en un CPD antes de que sea un problema: un caso práctico de inteligencia artificial

Una de las grandes paradojas de los centros de procesamiento de datos (CPD) es que…

Hace 3 semanas

Accede a datos de calidad en segundos: Elimina barreras con DESPACE

Los datos son el activo más valioso del siglo XXI, pero ¿qué pasa si no…

Hace 2 meses

IA para frenar ataques DDoS en segundos

Los ataques de denegación de servicio (DDoS) no solo afectan a quien los sufre directamente.…

Hace 2 meses