Beberapa pertanyaan pada server database saya sepertinya butuh waktu lama untuk merespon, dan saya percaya penggunaan CPU tinggi. Saat berjalan ps aux
, saya melihat ~ 250 koneksi "idle" (yang saya yakini terlalu banyak). Saya belum mulai melakukan diagnosa lengkap, tetapi saya ingin tahu apakah ini tempat yang baik untuk mulai mencari.
Saya juga menggunakan PgBouncer dengan pooling tingkat transaksi. Saya mencurigai bahwa saya dapat dengan mudah mengurangi jumlah idle
koneksi dengan menyetel ukuran kolam. Namun, saya tidak ingin mulai melakukan terlalu banyak perubahan kecuali ada alasan bagus untuk melakukannya.
Bisakah banyak idle
koneksi di PostgreSQL 9.2 memengaruhi kinerja?
Terima kasih banyak!
postgresql
database-design
performance
query-performance
Juan Carlos Coto
sumber
sumber
Jawaban:
Saya benar-benar ragu koneksi menganggur adalah masalah Anda. PostgreSQL sangat mampu menangani sesi idle karena hampir tidak memerlukan sumber daya. Sesi aktif di sisi lain jauh lebih mungkin menjadi penyebab kelambatan.
Lihat https://wiki.postgresql.org/wiki/Number_Of_Database_Connections untuk referensi tentang jumlah koneksi basis data.
sumber