PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Menonaktifkan Pengumpulan Koneksi di Rails untuk menggunakan PgBouncer

TLDR; jangan ubah apapun

Pooling di rails berbeda dengan pooling di PGBouncer. Kumpulan koneksi Rails adalah sekelompok koneksi yang tersedia untuk setiap utas dalam proses itu, biasanya hanya 1. Setiap koneksi di kumpulan Rails Anda akan memiliki koneksi ke database postgres Anda, atau PGBouncer jika itu ada di depan postgres. Dalam aplikasi Rails besar, Anda akan menjalankan beberapa proses Rails di setiap server dan beberapa server di belakang penyeimbang beban. Sesuatu seperti ini:

Tanpa PGBouncer, setiap koneksi ke postgres membuat proses postgres baru. Pada skala Anda ingin membatasi jumlah proses postgres yang berjalan sehingga Anda tidak memaksimalkan CPU dan memori. PGBouncer mengumpulkan koneksi dari semua kumpulan Rails Anda di semua proses dan semua server, dan secara efisien beralih di antara mereka.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ringkas atau beri nomor ulang ID untuk semua tabel, dan setel ulang urutan ke maks(id)?

  2. Bagaimana cara memperbaiki kueri implisit yang lambat pada tabel pg_attribute di Rails

  3. cara mendapatkan input pengguna dari qdateEdit dan memilihnya dari database di postgres

  4. Nilai kunci duplikat IntegrityError melanggar batasan unik - Django/postgres

  5. Pemicu untuk menyisipkan baris dalam basis data jarak jauh setelah dihapus