Usuarios expulsados del tema, ¿se necesita más memoria?

Hoy mi foro tuvo su primer pico de tráfico y los usuarios experimentaron su primer gran problema. Recibían mensajes de cierre de sesión cada 5-10 minutos y eran redirigidos a la pantalla de inicio, pero en la mayoría de los casos seguían iniciados.

Mi foro está alojado en un droplet básico de DigitalOcean, con CPU compartida y 1 GB de RAM, y lleva en línea aproximadamente una semana.

El pico ocurrió durante el partido, cuando se publicaron 400 mensajes en un solo hilo en 90 minutos (mientras la gente seguía el juego). Parecía haber entre 40 y 60 usuarios publicando en ese periodo, y no imagino que hubiera muchos visitantes anónimos (tenemos un total de 250 usuarios registrados).

Este es mi primer foro. ¿Se consideraría que esto alcanza los límites de un droplet de gama baja?

El uso de la CPU pareció alcanzar un pico del 60 % y el foro se mantuvo rápido y receptivo durante el partido.

DigitalOcean no ofrece un gráfico de memoria, pero accedí a la consola poco después del partido y el uso era del 87 % (con 2 GB de memoria de intercambio, aproximadamente el 37 %).

¿Cuál sería la acción recomendada?

  • ¿Actualizar a un droplet de 2 GB para el próximo partido y ver cómo funciona?
  • ¿Realizar una reconstrucción, quizás eliminando algunos complementos?
  • ¿Modificar el umbral que activa el evento?

Disculpas por mi ingenuidad; aún estoy aprendiendo mucho.

Sí, yo probaría eso primero.

Por lo de que los usuarios “se desconectan aleatoriamente”… nunca había escuchado eso… ¿te refieres a este aviso en la parte superior del tema?

Debido a una carga extrema, esto se muestra temporalmente a todos como lo vería un usuario desconectado

La búsqueda también se desactivará automáticamente en estos escenarios de carga pesada.

Gracias por la respuesta rápida. Eso es exactamente lo que haré.

Sí, creo que el aviso de carga extrema es lo que la gente estaba observando, con una redirección automática a la página principal del foro.

La gran mayoría vio este aviso y simplemente fue redirigida. Nada más.

Algunos dijeron que esto también les solía ocurrir. Pero, además, en una o dos de esas ocasiones también fueron desconectados simultáneamente.

No creo que haya ninguna redirección, ni tampoco cierre de sesión automático, así que no estoy seguro de a qué se refieren. Simplemente ves el tema como un usuario anónimo debido a la alta carga.

Me pregunto si hay algo mal en tu instalación. ¿La instalaste usando nuestra guía oficial de instalación? ¿Algunos plugins extraños de terceros?

Sí, esas son las instrucciones que seguí.

Es muy posible que haya cometido algún error durante la instalación.

Me llevó varios intentos, ya que era mi primera vez, y he realizado varias reinstalaciones experimentando con complementos.

Los plugins que he instalado son:

Gestor de Docker
Herramientas legales
Quién está en línea
Barra de herramientas de formato

Así que creo que son plugins bastante estándar.

La función “Quién está en línea” puede ser especialmente una gran fuente de consumo de recursos.

¿Tener demasiadas skins también se consideraría un gran consumo de recursos?

Solo una actualización del hilo.

La actualización de la memoria (de 1 GB a 2 GB) no pareció tener un gran impacto durante el pico reciente. Aunque nunca modifiqué/reconstruí mi app.yml, así que no estoy seguro de si eso habría marcado la diferencia.

Sin embargo, la actualización de la CPU de 1 CPU virtual a 2 parece haber solucionado el problema. :+1:

Hemos estado muy ocupados recientemente con nuevas fichajes de jugadores y nadie ha reportado un cierre de sesión. Mañana hay una gran prueba con un partido importante, pero todo parece ir bien.

Vas a necesitar actualizar tu app.yml y reconstruir para obtener el verdadero beneficio de esas actualizaciones.

db_shared_buffers debería ser el 25% de la memoria de tu sistema, lo que equivaldría a 512 MB. Tu configuración actual probablemente sea de 256 MB.

unicorn_workers es dos por núcleo, así que cámbialo de 2 a 4.

Lo haré hoy. ¡Gracias!

¿Cómo fue el examen ayer? ¿Ayudaron las actualizaciones?

Mucho, mucho mejor, gracias :slightly_smiling_face:.

A diferencia de la última vez, cuando era una molestia constante (ocurriendo cada 4 o 5 minutos) durante el juego del fin de semana, esta vez no pareció ser un problema mayor.

Parece que una minoría de usuarios recibió el mensaje de carga pesada solo una vez durante el juego, pero ninguno fue expulsado del hilo.

La migración a Discourse ha sido un éxito abrumador: hemos visto a muchos usuarios que no aparecían desde hace años (al menos un 50% más de usuarios). Así que en dos semanas voy a migrar de Digital Ocean a Hetzner para mantenerlo asequible y, al mismo tiempo, tener un servidor más potente para manejar los picos de tráfico (aunque me tienta simplemente escalar y desescalar el servidor durante esa ventana de dos horas a la semana).