データベースのダウンタイムの後、Rails は最初にこのエラーを 1 回スローします。
ActiveRecord::StatementInvalid: NativeException: org.postgresql.util.PSQLException: 接続が拒否されました。ホスト名とポートが正しいこと、およびポストマスターが TCP/IP 接続を受け入れていることを確認してください。
それ以降、データベースがバックアップされた後でも、すべてのデータベース呼び出しで次のエラーが発生します。
ActiveRecord::StatementInvalid: ActiveRecord::JDBCError: この接続は閉じられました。
サーバーを再び稼働させるには、Rails サーバーを再起動する必要があります。私たちの製品エンジニアは、データベースに依存するすべてのサービスを元に戻すことなく、データベースのメンテナンスを行いたいと考えているため、これは私たちにとって理想的ではありません。だから、私は疑問に思っています.Railsにデータベース接続の再確立を自動的に試行させる方法、またはこの動作を取得するための推奨される方法はありますか?
私が試したこと:
データベース オプションで reconnect を true に設定しようとしましたが、これにより、個々のデータベース接続を強制終了でき、Rails は接続を再確立します。ただし、データベースの停止後はそうではありません。コマンドコンソールから呼び出すことで接続を元に戻すことができることがわかりました
ActiveRecord::ベース::確立_接続
レールが上記のコマンドを呼び出すためのクリーンな場所を見つけると、これが機能するでしょうか? 助言がありますか?