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?
¿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í.
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.
¿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. ¿cómo es que crea tantos trabajos en Sidekiq?
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
¿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.
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 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).