Имах подобен проблем. Това се дължи на - някои транзакции се забиваха и се изпълняваха дълго време. По този начин използването на процесора беше на 100% през цялото време. Следната команда помогна да се открият връзките, работещи най-дълго време:
SELECT max(now() - xact_start) FROM pg_stat_activity
WHERE state IN ('idle in transaction', 'active');
Тази команда показва времето, откакто се изпълнява връзка. Това време не трябва да надвишава един час. Така че убиването на връзката, която работи от дълго време или е блокирала във всяка точка, работи за мен. Проследих тази публикация за наблюдение и решаване на моя проблем. Публикуване включва много полезни команди за наблюдение на тази ситуация.