我使用Unicorn部署Rails應用程序。每次部署之後和每次調整後,我都會對DB_POOL
進行調整,我看到postgres仍然保持一些閒置連接,新的更改非常不連貫,這讓我想知道是否在每次更換池之後在所有服務中重新啓動。有沒有辦法在Heroku上重新啓動postgres?
我還沒有找到關於此的任何文檔。在Heroku上有沒有類似pg_ctl的命令?
我使用Unicorn部署Rails應用程序。每次部署之後和每次調整後,我都會對DB_POOL
進行調整,我看到postgres仍然保持一些閒置連接,新的更改非常不連貫,這讓我想知道是否在每次更換池之後在所有服務中重新啓動。有沒有辦法在Heroku上重新啓動postgres?
我還沒有找到關於此的任何文檔。在Heroku上有沒有類似pg_ctl的命令?
不,你不能在Heroku上重新啓動你的Postgres數據庫。如果你有連接不好,這可能是一個應用程序問題。嘗試在拖延PG-額外插件,尋找IDLE
連接:
此外,還可以嘗試建立在你的after_fork
塊定製的ActiveRecord的連接,使連接收割者,應清理任何揮之不去的死連接發現:
謝謝。之前已經這樣做了,但仍然有空閒的連接。 – Martin
[重新啓動Heroku Postgres開發數據庫]的可能的重複(http://stackoverflow.com/questions/11949084/restart-heroku-postgres-dev-db) – hd1
這聽起來像你真正想要做的是刷新你的連接池....但是這就是說,這聽起來像你有一個應用程序錯誤,可能是你泄漏交易的地方,如果這實際上有什麼區別。 –