Discourse を最新バージョンにアップデートした後、nginx で 502 エラーが発生するという奇妙な問題が発生しています。
一部のユーザーは投稿時に 502 エラーを受け取りますが、そうでないユーザーもいます。一部のプロフィールでは 502 が発生しますが、そうでないプロフィールもあります。
CPU 使用率は 10 ~ 25%、RAM 使用率は約 20% です。
5 つのプラグインを無効にしてみましたが、結果は同じでした。
これらの 502 エラーの原因を特定するには、どのログを確認すればよいですか?
/var/log/nginx/error.log を見ると、ランダムにこれらのエラーが多く発生しており、これが 502 の原因だと推測されます。
単にタイムアウトしているのでしょうか?
2025/04/29 18:11:50 [error] 617#617: *419 upstream prematurely closed connection while reading response header from upstream, client: <IP>, server: _, request: "POST /posts HTTP/2.0", upstream: "http://127.0.0.1:3000/posts", host: "forum.domain.com", referrer: "https://forum.domain.com/"
本当に古い、1年以上前のものです。アップグレード元を確認できるログはどこかにありますか?
これもいくつか発生しています
*2 connect() failed (111: Connection refused) while connecting to upstream,
...
upstream: "http://127.0.0.1:3000/message-bus/92fd28cbf742...
これはランダムに発生しているようです。突然すべてが速くなり、再び投稿できるようになりますが、その後遅くなり、502エラーが再び表示され始めます。
postgres/currentログの中身を確認
2025-04-29 18:48:24.709 UTC [1746] discourse@discourse LOG: duration: 606789.911 ms execute <unnamed>: SELECT COUNT(*) FROM "posts" WHERE "posts"."deleted_at" IS NULL
duration: 606789.911 ms
投稿はたくさんありますが、ユーザーは少ないのに、なぜ600,000ミリ秒もかかっているのでしょうか?
インデックスの問題などで、クエリが遅くなっているのでしょうか?
PostgreSQL の discourse テーブルを選択し、処理を高速化するために REINDEX DATABASE discourse; を実行しました。
非常に時間がかかるだろうと推測しています。
pfaffman
(Jay Pfaffman)
2025 年 4 月 29 日午後 7:39
10
PostgreSQL 15 update のアドバイスに従いましたか?データベースを VACUUM する必要があるかもしれません。
私はそうしませんでしたが、postgres_data_oldフォルダはあります(ただし、その投稿と異なるディレクトリにあります)。
しかし、その後の投稿では;
“もし専用のデータコンテナを使用しているセットアップを運用している場合” と書かれていますが、これはPostgreSQLがDockerの専用コンテナで動作しているという意味だと思いますか?
私たちの環境はフォーラムと同じインスタンスで動いています。だから、どう進めるべきか分からないですし、"もしそうでなければ"の条件句はないようです。
フォルダの存在は変換が成功したことを意味しますか、それとも別の意味がありますか?
pfaffman
(Jay Pfaffman)
2025 年 4 月 29 日午後 7:56
12
PostgreSQLのバージョンは /var/discourse/shared/standalone/postgres_data/PG_VERSION で確認できます – コマンドラインアップグレードを行った場合、アップグレードが成功していて気付いていない可能性があります(ただし、再構築を2回実行している必要があります)。ウェブインターフェースからアップグレードした場合は、お持ちのOSとDockerが最新バージョンであれば、コマンドラインによる再構築を進めることをお勧めします。
バージョンは15です。
VACUUMコマンドを実行した後、状況はかなり改善されたようです。
投稿は正常に機能し、高速であるように思われますが、管理者がユーザープロファイルをクリックしてプロファイルに入ろうとすると、まだ502エラーが発生します。タイムアウトのようですが?
データベースのその部分を高速化するために何かできることはありますか?
system
(system)
クローズされました:
2025 年 5 月 29 日午後 8:08
14
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.