1

PostgreSQL データベース アドオンを使用して、Heroku でホストされている Django アプリケーションを使用しています。フロント ページの GET 要求を実行すると、アプリケーションは SQL クエリを実行して必要な表示情報を抽出します。また、GET リクエストごとに Popen を使用してサブプロセスを作成します。

しかし、GET リクエストの数が 1 秒に 1 回程度に増えていることに気付くと、ステートメントでエラーが発生していmodel.objects.get(id="----")ます。OperationalError が発生します。heroku の無料プランが追いついていないか、データベースが追いついていないのだと思います。

この場合、Heroku の無料プランから離れたくありませんが、そうする場合、ワーカーをさらに作成する必要があるのでしょうか? データベースをアップグレードしますか? 問題を診断する方法は何ですか? また、リクエストの数が 1 秒に 1 回程度に増えると、単純な SQL クエリで問題が発生するのはなぜでしょうか? これは合理的に思えますか?

私のハック ソリューションは、OperationalError をキャッチするたびにビューをスリープ状態にすることでした。他に推奨されるアプローチはありますか?

4

0 に答える 0