ここには2つのことが起こっています。
- メールジョブがエンキューされるまでの遅延
- 実際のメール送信の処理時間
最初の点については、100%確信はありませんが、email_time_window_minsを短くすると、通知がより早くキューイングされると考えています。
メールジョブがscheduledになると、Sidekiqワーカーがそれらを1つずつ処理します。Sidekiqワーカーを増やす(サーバー容量に応じてDISCOURSE_SIDEKIQ_WORKERSを5から10、15、または20に設定する)と、より多くのジョブが同時に処理されるため、キューが2倍/3倍/4倍速く空になります。