Cómo evitar que un sitio web deje de funcionar

Evitar que un sitio web deje de funcionar requiere una estrategia con muchas facetas y algo de esfuerzo, pero vale la pena mitigar los riesgos de pérdida de conversión y las penalizaciones de SEO asociadas al tiempo de inactividad.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Más información acerca de qué es el tiempo de inactividad y por qué es importante
  • Describir las causas del tiempo de inactividad

Copiar enlace del artículo

¿Qué es el tiempo de inactividad?

En la web, el tiempo de inactividad es un periodo de tiempo en el que un sitio web no está disponible para alguno o todos sus usuarios. Durante el tiempo de inactividad, los usuarios que intentan acceder al sitio pueden ser redirigidos a una página de error, o ver una página de error creada por su navegador. Estos periodos de inactividad pueden acarrear rápidas penalizaciones para el sitio, como la pérdida de conversiones e incluso un descenso en la clasificación del motor de búsqueda (SEO).

¿Por qué dejan de funcionar los sitios web?

  • Mantenimiento del alojamiento: en ocasiones, los alojamientos web tienen que realizar tareas de mantenimiento en los servidores en los que se encuentran los archivos del sitio web. Este mantenimiento puede requerir a veces periodos de inactividad. Con un buen servidor, este tiempo de mantenimiento debe anunciarse con antelación, debe ser mínimo y debe programarse durante períodos de baja actividad.
  • Servidores sobrecargados: los servidores web solo pueden gestionar un número determinado de solicitudes a la vez, y los picos de tráfico pueden sobrecargar los servidores, lo cual impide que los usuarios puedan acceder al sitio. En algunos casos, las empresas de alojamiento utilizan la tenencia múltiple, es decir, alojan varios sitios en un mismo servidor. Con la tenencia múltiple, cuando se produce un pico de tráfico en un sitio, este puede crear un tiempo de inactividad en otro sitio no relacionado.
  • Fallos de hardware: aunque los servidores de alojamiento se suelen mantener en entornos protegidos y controlados, a veces este hardware puede fallar. Los ventiladores pueden romperse, los discos de almacenamiento pueden corromperse, y los cortes de energía o los desastres naturales pueden hacer caer centros de datos enteros. Sin un plan alternativo, estos fallos de hardware pueden generar un tiempo de inactividad sostenido.
  • Ataques maliciosos: los sitios también pueden verse desconectados con ataques de denegación de servicio distribuido (DDoS) y otros tipos de ataques. Los ataques DDoS tienen como objetivo sobrecargar de forma deliberada un sitio con tráfico para crear una denegación de servicio. Los ataques más maliciosos implican el uso de fuerza bruta u otros medios para obtener acceso al registrador de nombres de dominio o a las cuentas de alojamiento asociadas al sitio. Los atacantes utilizan entonces esta autorización falsificada para tumbar o modificar el sitio web.
  • Errores de programación: la funcionalidad de un sitio web depende de que el código se ejecute correctamente, e incluso un solo error en este código puede hacer que un sitio web deje de funcionar. Algunos errores no se activan hasta que se cumplen ciertas condiciones poco frecuentes; son las llamados "casos extremos". Puede que estos errores de casos extremos no aparezcan hasta varias horas, o incluso días, después de que el código defectuoso se haya publicado en el sitio.
  • Dominios caducados: Cuando el registro del nombre de dominio de un sitio caduca, el registrador cortará el vínculo entre la dirección IP de ese sitio y el nombre de dominio. Una vez que esto ocurre, los usuarios ya no podrán acceder al sitio utilizando ese nombre de dominio.

Cómo evitar el tiempo de inactividad

Aunque puede ser difícil conseguir un 100 % de tiempo activo (incluso Google y Facebook han tenido tiempos de inactividad ocasionales por diversos problemas), los propietarios de sitios pueden tomar medidas para minimizar la cantidad de tiempo de inactividad que experimenta un sitio. A continuación, varias estrategias clave.

Escoger el host y el plan de alojamiento adecuados

Aunque hay problemas como el mantenimiento imprevisto del servidor y los fallos de hardware que pueden afectar a cualquier proveedor de alojamiento web, algunos tienen mejores registros de tiempo activo que otros. Se pueden encontrar comparaciones de tiempo activo de diferentes proveedores de alojamiento en línea, y elegir un alojamiento con un excelente registro de tiempo activo ayudará a mejorar la probabilidad de que un sitio permanezca en funcionamiento. También es importante elegir un host que ofrezca un buen servicio de supervisión; el primer paso para mitigar el tiempo de inactividad es saber que este existe.

Deben evitarse los planes de alojamiento con límites de uso estrictos. Algunos alojamientos aplican límites de ancho de banda diarios o mensuales a sus usuarios. Esto significa que un pico en el tráfico, aunque no sea lo suficientemente importante como para sobrecargar un servidor, puede hacer que el proveedor suspenda la cuenta y desconecte el sitio. Para evitar el tiempo de inactividad, los planes de alojamiento con ancho de banda ilimitado o las tarifas de pago por exceso de ancho de banda son los más adecuados.

Algunos servicios de alojamiento también ofrecen planes de conmutación por error (o "redundantes"). Esto significa que si el servidor que aloja el sitio falla, el servidor comenzará a alojar automáticamente ese sitio desde un servidor diferente. Esta es una buena protección contra el tiempo de inactividad relacionado con el alojamiento. Hay que tener en cuenta que un buen plan de conmutación por error utilizará servidores en diferentes ubicaciones físicas. Si los servidores de conmutación por error están todos situados en el mismo centro de datos que el servidor original, no serán de mucha ayuda durante una interrupción que afecte a todo el centro de datos, como un fallo eléctrico.

Activar la protección contra DDoS

Muchas organizaciones no se interesan por la protección contra DDoS hasta que han sufrido un ataque que les ha causado un tiempo de inactividad considerable. Los servicios de mitigación de DDoS se pueden activar de forma proactiva para garantizar que los ataques DDoS se atiendan rápidamente y se minimice el tiempo de inactividad.

Ejercer las mejores prácticas en el desarrollo web

Para minimizar el riesgo de que los errores de codificación hagan que un sitio deje de funcionar, los desarrolladores deben tomar algunas precauciones básicas. Desarrollar con un entorno local, utilizar el control de versiones y probar inmediatamente todos los cambios de producción en un sitio, incluidos los casos extremos, ayudará a disminuir el riesgo de que los errores de producción hagan que un sitio deje de funcionar.

Elegir el registrador adecuado

Algunos registradores de nombres de dominio son más indulgentes que otros en lo referente a la caducidad de los nombres de dominio. Los mejores registradores para maximizar el tiempo activo son aquellos que hacen un buen trabajo informando a sus clientes cuando los dominios están a punto de caducar, así como ofreciendo un período de gracia generoso después de caducar. Para más información sobre cómo tomar esta decisión, consulta Cómo elegir el mejor registrador de nombres de dominio.

Usar una CDN

Las redes de entrega de contenido (CDN) almacenan en caché los datos de los sitios web en el perímetro de la red, y son capaces de servir a los usuarios archivos de sitios web almacenados temporalmente en caché sin contactar con el servidor de origen del alojamiento. Las CDN pueden ayudar a dar cobertura durante tiempos de inactividad breves, al servir el sitio desde la caché, incluso si el servidor de alojamiento no responde.

Ten en cuenta que la CDN solo cubrirá breves lapsos de tiempo de inactividad, ya que los archivos del sitio web almacenados en la caché tienen un tiempo de vida (TTL), tras el cual la CDN volverá a ponerse en contacto con el servidor anfitrión para solicitar una nueva copia del archivo. Este TTL suele ser de entre 30 segundos y cinco minutos.

Supervisión rigurosa

Es importante ser consciente del tiempo de inactividad para mitigarlo. Además de la supervisión proporcionada por un proveedor de alojamiento, se recomienda recurrir a un servicio independiente de supervisión del tiempo de actividad. Estos servicios pueden enviar alertas a los desarrolladores en el momento en que un sitio web deja de funcionar por el motivo que sea.