Redis メモリ Discourse 3.4.0.beta3 で増え続けている

Discourse をバージョン 3.4.0.beta1 から 3.4.0.beta3 にアップデートしました。アップデート後、フォーラムのメモリ使用量が徐々に増加し、アプリケーションがダウンする現象が発生しています。サーバーを確認すると、redis-server がメモリの 95% を消費していることがわかります。

一時的な解決策として、毎日 redis-cli flushall を実行しています。Discourse インスタンスは Docker でホストされています。

以前のバージョンにダウングレードしようとしましたが、再構築中にいくつかのエラーが発生しました。

「いいね!」 2

これを修正する方法を教えていただけますか?以前のバージョンにダウングレードすることは可能ですか、それとも他に何か提案はありますか?

Redisの修正方法はわかりませんが、以前に似たようなことを読んだことがあります。検索すると役立つかもしれません。

ただし、ダウングレードはほとんどの場合悪い考えです。

「いいね!」 1

Discourse のダウングレードはできません。
Redis はメモリの 95% ではなく 38.9% を使用しています。それでもかなりの量です。

Sidekiq キューはどのようになっていますか? /sidekiq/queues

/sidekiq/queues の詳細を教えてください。

他に詳細が必要な場合はお知らせください。

「いいね!」 1

これらのメールは仕事ですか?

「いいね!」 2

疑わしいですね。どうすれば確認できますか?

キューをクリックしてください

このキューセクションについてお話しされていますか?

もう一つ、/sidekiq/scheduler/history の下で、Jobs::Chat::EmailNotifications が長時間実行されているのを見つけました。

はい、単に「low」という単語をクリックしてください

「いいね!」 1

詳細は下記をご覧ください

ここに同様の問題があります。

おそらく修正方法もあります。

あなただけがこの問題に遭遇しているわけではないので、これはバグのようです。:thinking:

ありがとうございます。しかし、チャットをオフにすることはできないと思います。別の方法を考えます。

一時的な解決策として、Redisのメモリをクリーンアップする簡単なbashスクリプトを作成し、cronジョブで毎日午前6時に実行するように設定しました。
注: ログは /home/ubuntu/logs に保存しています。不要であれば無視してください。

#!/bin/bash

# ログディレクトリとファイル名を設定
LOG_DIR="/home/ubuntu/logs"
LOG_FILE="$LOG_DIR/redis.cleanup.$(date +\\%Y-\\%m-\\%d).log"

# ログディレクトリが存在することを確認
mkdir -p "$LOG_DIR"

# 現在の環境に関する情報をログに記録(ホスト側)
echo "Running script at $(date)" >> "$LOG_FILE"

# アプリケーションでdiscourseランチャーを実行し、出力をログファイルに保存(ホスト側)
echo "redis cleanup command" >> "$LOG_FILE"
docker exec app redis-cli flushall >> "$LOG_FILE" 2>&1

# スクリプトが完了したことを示す(ホスト側)そして終了
echo "Script completed successfully at $(date)" >> "$LOG_FILE"
exit 0
「いいね!」 2

更新:自動修正されたようです。思い出しましたが、前回バージョンを更新した際にも同様の問題が発生し、メモリが急増しましたが、しばらくすると自己解決しました。バグのようです。

「いいね!」 2

更新:アプリを停止して再度起動しましたが、同じ問題が発生しました :slightly_smiling_face:

「いいね!」 1

1億2200万件のエンキューされたジョブは、明らかに何かが間違っていることを示していますね :thinking:

Discourseのユーザーは何人いますか?
#chatチャンネルはいくつありますか
最大のチャットチャンネルTOP3には、それぞれ何人のユーザーがいますか?

「いいね!」 1

3、4個のチャットグループには20万人以上のメンバーがいます

「lakh」という言葉は馴染みがありませんが、Googleによると100,000だそうです。:open_mouth: 正しいですか?

「いいね!」 1

はい、単一のグループの正確なメンバー数は227,254人です。他の2つまたは3つのグループにも同様のメンバーがいます。

「いいね!」 1