Así que tengo un problema con Sidekiq.
Funciona increíblemente rápido ejecutando trabajos cuando lo superviso a través de la interfaz web de Sidekiq. Pero ocasionalmente parece que se satura y comienza a ejecutarse extremadamente lento. Funciona al 1-5% o así de su velocidad normal y no se recupera a menos que limpie Redis, a pesar de que el uso de recursos del servidor sea normal/bajo.
Parece que una vez que la cola alcanza cierto tamaño, se bloquea y se ralentiza drásticamente. Esto hace que la cola crezca aún más. Solo estoy adivinando, quizás la cola es grande simplemente porque se ralentizó por alguna otra razón.
Este gif describe cómo se ve para mí.
Hay muchos recursos del servidor disponibles, el uso de CPU es muy bajo en este momento, menos del 10%. También hay mucha RAM y SSD disponibles. En cuanto al servidor, tiene 16 núcleos de CPU con 32 hilos. He intentado ejecutar entre 8 y 14 unicorn_sidekiqs. También probé con 20, pero eso generó muchos errores 5xx.
Logré acelerar los trabajos lentos mostrados en la pestaña ‘busy’ de la interfaz web de Sidekiq usando
Could sidekiq queue be reason for 500 errors? - #30 by bartv (
agregando ‘vm.overcommit_memory = 1’ al archivo /etc/sysctl.conf y reiniciando) y también reduciendo unicorn_sidekiqs a 8 (de 12).
Aún se ejecuta lento. Ayer vi esto en el registro de Redis (la única otra advertencia era sobre no tener overcommit_memory configurado en 1, lo cual modifiqué anteriormente):
# WARNING: /proc/sys/net/core/somaxconn is set to the lower value of 128
^ ¿Alguien ha solucionado esta advertencia?
De todos modos, si alguien tiene alguna idea sobre cuál podría ser la causa y/o la solución, por favor hágamelo saber. Se lo agradecería.
Sería genial resolver este problema para que no vuelva a ocurrir, en lugar de tener que limpiar la cola.
Aquí hay una captura de pantalla de lo que veo en el panel de Sidekiq:
Y algunas capturas de pantalla de los trabajos en la pestaña ‘busy’:
Además, ¿alguien sabe si es seguro usar esta opción? ¿Eliminar la cola de baja prioridad desde la interfaz web de Sidekiq?





