Si un servidor web que aloja un sitio web se ha quedado sin RAM y poder de procesamiento debido al gran tráfico, ¿qué se puede hacer para escalar a fin de manejar el exceso de tráfico?

La buena noticia es: ¡mucho! Estoy apuntando esta respuesta a una audiencia semi-técnica ya que la pregunta es de alto nivel. Si es desarrollador, le pido disculpas por la descripción general de alto nivel.

1: Compre una caja más grande. Sin duda, la opción más barata, a menos que ya tenga la caja más grande. El resto de las sugerencias que tengo implican tiempo de desarrollador. Que varía entre $ 100 y $ 300 por hora para alguien que sabe cómo resolver problemas de rendimiento. Incluso si gasta $ 10k, alcanza el tiempo de desarrollo en un par de semanas. Por supuesto, no puede hacer esto en medio de un pico de tráfico y provocará una interrupción significativa, un poco de planificación aquí podría ahorrarle una fortuna.

2: comprar más cajas. Si su sitio es estático o sin sesión, esto debería ser bastante fácil. Si no es así, será mejor que se presenten sesiones ‘adhesivas’ a corto plazo. He usado nginx para proporcionar enrutamiento de sesión fija en el pasado en servidores de juegos que necesitaban sesiones. Esto requerirá un esfuerzo medio de alguien con habilidades de desarrollo. Una persona experta en operaciones será capaz de instalarte de tal manera que solo traigas las otras cajas en línea cuando las necesites. Servicios como Heroku | La plataforma de aplicaciones en la nube a menudo vale la pena si no tiene experiencia en DevOps.

3: almacena en caché tu contenido dinámico. Las opciones disponibles para el almacenamiento en caché son enormes. ¿Almacena en caché toda la página, los componentes de la página, solo las llamadas a la base de datos, solo los objetos comerciales complejos? ¿Acabas de configurar los encabezados de caché en tu página y esperas que Internet obedezca las reglas? Averiguar qué almacenar en caché y durante cuánto tiempo sin afectar la experiencia de sus usuarios es difícil. Espera aprender mucho mientras experimentas.

4: Usa un idioma diferente. Si su sitio web está construido actualmente con Ruby on Rails, Django o Php, el tiempo de ejecución podría ser parte del problema. Para los sitios web intensivos en CPU, Java y .Net son entre 5 y 100 veces más rápidos que sus competidores dinámicos (aunque a expensas del tiempo de desarrollo). Un patrón común es dividir su sitio en servicios (microservicios), construirlos en un lenguaje dinámico rápidamente, luego descubrir cuáles son lentos y reemplazarlos con un marco más apropiado. Por supuesto, esto agrega complejidad.

5: Todo lo anterior. Crear un sitio web es fácil. Construir uno que escale es difícil. Un sitio exitoso utiliza todas estas técnicas y más para escalar. La razón de escalar es difícil porque cada negocio tiene objetivos diferentes con respecto a la experiencia del usuario y sus datos. Es por eso que la gente suele llamar a los expertos. Cyrus Innovation

Uno de los problemas con los que se encuentran los propietarios de sitios web es cómo reaccionan sus servidores cuando aumentan los volúmenes de tráfico. Para muchos se traduce en una carga de página más lenta. Cuando eso comience, pueden esperar tasas de rebote más altas y la pérdida de ingresos potenciales.

La tasa de rebote es una forma de medir cuántos visitantes visitan su sitio y luego se van antes de obtener lo que están buscando. Estas personas generalmente se van porque la página tarda demasiado en cargarse, por lo que hacen clic en otra URL para encontrar una que se cargue rápidamente. Internet está lleno de surfistas que quieren información y la quieren AHORA MISMO. Son impacientes y no quieren quedarse atrapados viendo una página desplegarse lentamente cuando ya podrían estar obteniendo lo que buscan.

El hecho es que cuanto más lento es el tiempo de carga, mayor es la tasa de rebote. Un surfista perdido es posible pérdida de ingresos. Una vez que se van, hay una pequeña o ninguna posibilidad de que alguna vez regresen.

Tomar acción

Cada vez que la tasa de rebote sigue siendo alta, aunque probablemente no sea del 100% con una carga lenta, existe una buena probabilidad de que tenga un problema con la carga lenta de todos modos. Eso requiere tomar medidas. Una buena forma de resolver este problema es pasar del alojamiento compartido al alojamiento del servidor web dedicado.

En un servidor compartido, todos comparten los recursos. Cuando esos recursos se agotan en ciertas áreas, su sitio podría cargar más lentamente, sin culpa suya. Con un servidor dedicado, esos recursos están ‘dedicados’ a usted. No compartir Su sitio web tiene todo el poder y los recursos que necesita para cargar de manera rápida y sin problemas.

Una vez que tenga un servidor dedicado, aún es posible obtener tanto tráfico que experimente problemas. Es entonces cuando tiene que hacer cosas como solicitar RAM adicional para su servidor. Por lo general, no tiene que pagar la RAM por completo, pero la agregará a su factura mensual de alojamiento.

Incluso cuando haya agotado los recursos, puede llegar a un punto en el que su servidor simplemente se ha expandido tanto como puede expandirlo y le está dando todo lo que tiene. Si llega a este punto y su sitio está actuando, podría ser hora de echar un vistazo más de cerca a su sitio web. Sus opciones dependerán del tipo de sitio web que tenga.

Por lo general, significará reestructurar el sitio para darle un impulso al rendimiento. Una forma de hacer esto que es bastante popular es dividir su sitio en subdominios. Luego agrega un servidor a cada subdominio. Ahora tiene suficientes recursos que fluyen a su sitio principal y su subdominio, porque cada uno tiene su propio servidor y no está aprovechando sus recursos.

Si necesita ayuda con los problemas de alojamiento de su servidor web, vaya a webdevel.com y déjenos echarle una mano. Entendemos exactamente cómo solucionar estos problemas y sabemos qué necesita su sitio. Podemos hacer que su sitio web se cargue y funcione como debería.

Puede comenzar a manejar el tráfico optimizando su sitio web. Aquí hay algunas cosas que puede hacer:

Reduzca la cantidad de solicitudes en su sitio web. Esta es una de las principales razones de muchos sitios web. Si el número de solicitudes es alto, el sitio web se desconectará porque los recursos se agotarán. Compruébelo en: Página en pingdom.com Le mostrará el número de solicitudes junto con el tiempo de carga.

Echa un vistazo a los tiempos de varios objetos que tardan en cargar haciendo que tu sitio web sea lento. Eliminarlos u optimizarlos.

Compruebe también lo mismo en el sitio web de Google Page Insights.

Reducir el número de solicitudes disminuirá el tiempo de carga de su sitio web al manejar el tráfico rápidamente.

Después de optimizar las cosas anteriores …

Instale el complemento W3Cache en su sitio web (si es wordpress). Siga algunos tutoriales sobre cómo hacer su configuración. W3Cache te hará la vida mucho más fácil.

Ahora también, si su tráfico es demasiado alto y se está bloqueando, es hora de actualizar su plan de alojamiento. Hable con su webhost o vea sus planes. Actualízalo.

Consulte la “escala automática” de Amazon Web Services