Discourseフォーラムがフリーズしてタイムアウトし、読み込めない

最近、Discourseフォーラムの大部分のリクエストでタイムアウトが発生するようになりました:https://caddy.community

問題が発生し始めた数日前には、アップデートや変更は一切行われていません。時には正常に読み込まれることもありますが、数分後には読み込みに数分を要するようになります(上記のリンクが速く読み込まれた場合でも、数分後に再度お試しください。curl を使用することもできます)。

ホスティングは DigitalOcean 上で行われています。

マシンリソースは逼迫していません:CPU、RAM、ディスク、ネットワーク I/O には十分な余裕があります。

ログにエラーはなく、マシン上で未知のプロセスも実行されていません。約3年間正常に稼働していましたが、現在では読み込めません。

フォーラムをより高速に動作させる方法をご存知の方はいらっしゃいますか?マシンを再起動しましたが、フォーラムは依然として低速のままです。

@mholt さん、こんにちは :wave:

/latest/categories の間を行き来してみましたが、かなり高速です。

アプリの特定のルートで遅延が発生しているのをご覧になっていますか?

また、MiniProfiler は有効になっていますか?

有効化手順は以下をご覧ください:Long loading times for user summary page with slow database - #6 by Falco

有効化後、遅延が発生した際に、その原因を正確に特定できるようになります。

へえ…いやあ、今日は読み込みが速いね。:thinking: (コミュニティの他の人々も同じ体験をしているから、僕だけじゃないんだよね、哈哈 – でも、断続的に起こるみたいだね。)

機会があれば試してみます、ありがとう!

うーん、どうやら私の ssh 接続も時々タイムアウトするようです。

DigitalOcean にネットワークの問題があるのかしら(彼らは何も報告していないけど)——もしかしたら、DO にチケットを立てて調べてもらう必要があるかもしれません。これは Discourse 固有の問題ではないかもしれません。

最近、またこの問題が発生し始めました:フォーラムの読み込みに数分かかります。

DigitalOcean ドロップレットへの ping 時間は正常で、約 80ms です。サーバーの負荷も正常です:

隅にあるデバッグツール(MiniProfiler)の計測値には問題が見当たりません:すべての時間が約 300ms 以内です:

(このページの読み込みに約 3 分かかりました。)

サーバーに到達してからページがレンダリングされるまでのプロセスの中で、MiniProfiler で計測されていない部分はありますか?

Redis での処理時間は計測されず、あなたが目撃している現象の原因となり得ます。サーバーを調査し、Redis がディスクへの変更の永続化に問題を抱えていないか確認する必要があります。

なるほど、その方法について何かアドバイスや関連ガイドへのリンクはありますか?これは私の専門外です😅

少し訂正させてください。Redis に費やされた時間は Mini Profiler の詳細部分には表示されず、最初の列にある全体時間に含まれます。そのため、スクリーンショットを見ると、この状況は当てはまらないようです。

Caddy はバックエンドへの待機時間と各リクエストの全体時間を記録していますか?リバースプロキシが待機していた可能性はありませんか?

次回発生時にログに追加し、原因を特定します。

静的アセットの取得に時間がかかっているのかもしれません。次回そのようなことが起きたら、Chrome DevToolsで確認してみてください。

アイデアをありがとう、サム。以前もネットワークインスペクタを確認しましたが、決定的なことは何も思い出せませんでした。次回はより詳しく確認します。

これは数日に一度起こる傾向があるので、また発生した際に報告します!