Com seu hardware, eu esperaria obter uma lista de login/tempo mais recente em média de cerca de 150ms no aplicativo, 80ms no SQL.
Eu começaria com 12 workers e veria como ele se comporta com isso. A melhor coisa que você pode fazer é rastrear métricas; se você quiser saber se deve adicionar mais workers, verifique se as solicitações estão sendo enfileiradas aguardando workers do aplicativo.
Você está rastreando as métricas que o próprio Discourse exporta através do exportador do Prometheus? Isso lhe dará uma boa visão de como a instância está se saindo, no geral.
Como são os números de desempenho para usuários anônimos e regulares (não administradores)?