¿Más de 3 millones de trabajos en cola en Sidekiq? ¿Cómo puedo detener la generación de la cola?

ahora 3k después de que acabo de limpiar todos

Intento buscar cualquier configuración de chat o resumen en el panel de administración, pero no se encontró nada.

¿Alguna idea de dónde vienen? :sob:

PD: esos trabajos hacen que mi sitio sea extremadamente lento :sob:

1 me gusta

¿Qué hay en la pestaña Retries de Sidekiq?

Aquí hay 6 trabajos que se están reintentando. Ese es un número aceptable y sé por qué.

Si esto está en los 1000, no es bueno y necesita tomar medidas.

¿Tiene algún error en los registros de correo electrónico o en los registros de errores del servidor en /logs?

Cosas a tener en cuenta:

¿Su proveedor de servicios de correo electrónico lo está limitando? ¿Ha excedido sus límites de velocidad para el nivel de servicio en el que se encuentra? ¿Ha pagado su factura con ellos?

3 Me gusta

es cero

y no parece tener problemas relacionados con el correo electrónico en el registro.

¿Hay alguna configuración relacionada con el resumen del chat que pueda desactivar o simplemente debería desactivar el chat?

¿La cola entera son trabajos de UserEmail (en su mayoría)?

Comprueba el panel de tu servicio de correo electrónico (en tu proveedor de servicios de correo electrónico, no en Discourse) y mira si hay alguna información allí.

1 me gusta

Sí, casi todos son trabajos de correo electrónico de usuario

Revisé Mailgun (4 instancias en ejecución en mi cuenta)

La primera es la única que se encuentra con este problema y la fecha no parece ser mala, también revisé los registros pero no encontré nada sospechoso.

¿Tienen un registro de auditoría, se puede ver un registro de correos enviados continuamente?

¿Último correo enviado?

¿así?

y el último debería ser hace 12 minutos

Entonces, ¿algunos están pasando, pero está procesándolos lo suficientemente rápido?

¿Cómo puedo comprobar eso?
En Discourse (admin/email/sent) vi que el correo electrónico de resumen del chat se envió con una frecuencia baja, como como máximo 5-6 al día, la mayoría de las veces solo 1 o ninguno. :sob: ¿cómo es que crea tantos trabajos en Sidekiq?

1 me gusta

Echa un vistazo a los registros de correo electrónico en Admin… eso podría darte más claridad.

Una cosa que noté es que el problema de la cola de sidekiq comenzó justo después de que actualicé a 3.4.0.beta4-dev, la otra instancia que instalé al mismo tiempo parece tener el mismo problema (confirmando ahora)

También miré los ids, parece que el sistema está intentando enviar un resumen del chat a todos los usuarios :thinking:
¿Es normal?

actualización:
Desactivar el chat evita que esos trabajos se pongan en cola nuevamente, pero mi sitio necesita la función de chat, y todavía estoy investigando otras soluciones.

otra actualización:
Desactivé la función de chat durante 2 días, la volví a activar y cambié los días de retención del canal de chat de 180 a 3 días. Ahora parece funcionar bien, todavía estaré atento.

actualización 02/01:

Establecí los días de retención en 7, alrededor de 1.101.685 trabajos en cola en este momento, parece que mi servidor puede manejar esta cantidad y el sitio no se volverá lento.

4 Me gusta

@th21 ¿cuántos usuarios y canales de chat tienes?

¿Qué tan rápido (o lentamente :cry:) se procesa la cola low?

9k usuarios y 3 canales (incluyendo 1 canal predeterminado para el personal)

este es el estado actual

antes de hacer los cambios mencionados anteriormente, el tamaño de la cola baja parece que nunca disminuye

Lo siento @th21, fue efectivamente un error que se corregirá en FIX: chat was enqueueing too many "chat summary" emails by ZogStriP · Pull Request #31133 · discourse/discourse · GitHub

Tenemos una consulta que enumera todas las menciones o mensajes directos “de usuarios no leídos” para el chat y, al intentar ser demasiado inteligente, resultó ser incorrecta. En lugar de poner en cola un “resumen de chat” (también conocido como notificación por correo electrónico) para las menciones en canales o no leídos en mensajes directos, estaba poniendo en cola un trabajo por cada mensaje :expressionless: Dado que ese trabajo se ejecutaba cada 5 minutos, fácilmente infló sidekiq con trabajos inútiles… (nota: afortunadamente, los correos electrónicos no se enviaron ya que no podríamos recuperar ninguna mención).

4 Me gusta

Gracias, ¿cuál es la hora estimada de llegada para que este commit se fusione en test-passed?

1 me gusta

Menos de 48 horas

1 me gusta

@th21 ha sido revisado y fusionado :+1:

1 me gusta

Este tema se cerró automáticamente 30 días después de la última respuesta. Ya no se permiten nuevas respuestas.