Aquí está lo que funcionó para mí.
Después de monitorear el uso de memoria y ajustar mi configuración, pude detener los frecuentes mensajes de registro “Sidekiq está consumiendo demasiada memoria…”.
Hice este cambio en mi /var/discourse/containers/app.yml:
UNICORN_WORKERS: 4
UNICORN_SIDEKIQ_MAX_RSS: 700
Originalmente, tenía UNICORN_WORKERS configurado en 8, lo cual era demasiado agresivo y dejaba muy poco margen para Sidekiq, PostgreSQL, Redis y el sistema operativo.
Reducir a 4 workers liberó una cantidad significativa de memoria.
Luego aumenté el límite de RSS de Sidekiq de su valor predeterminado (~500 MB) a 700 MB, lo que le da a Sidekiq un poco más de espacio antes de que se reinicie automáticamente.
Hasta ahora, Sidekiq se ha estabilizado y el uso de memoria ahora se encuentra en una zona mucho más segura, con poco más de 1 GB movido de la memoria usada a la memoria en caché y disponible.
Dejo esto aquí por si resulta útil o como una pista de qué mirar para cualquier otra persona con problemas similares. Será interesante ver si esto se mantiene y es más estable después de una semana de funcionamiento, si es así, marcaré como resuelto.