PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Tắt kết nối gộp trong Rails để sử dụng PgBouncer

TLDR; không thay đổi bất cứ điều gì

Tổng hợp trong đường ray khác với tổng hợp trong PGBouncer. Nhóm kết nối rails là một nhóm các kết nối có sẵn cho bất kỳ luồng nào trong quy trình đó, thường chỉ là 1. Mỗi kết nối trong nhóm rails của bạn sẽ có một kết nối với cơ sở dữ liệu postgres của bạn hoặc PGBouncer nếu nó đang ở phía trước của postgres. Trong một ứng dụng đường ray lớn, bạn sẽ chạy nhiều quy trình đường ray trên mọi máy chủ và nhiều máy chủ đằng sau bộ cân bằng tải. Một cái gì đó như thế này:

Không có PGBouncer, mọi kết nối với postgres sẽ tạo ra một quy trình postgres mới. Ở quy mô lớn, bạn sẽ muốn giới hạn số lượng quá trình postgres đang chạy để bạn không sử dụng hết CPU và bộ nhớ. PGBouncer tổng hợp các kết nối từ tất cả các nhóm đường ray của bạn trên tất cả các quy trình và tất cả các máy chủ, đồng thời chuyển đổi giữa chúng một cách hiệu quả.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể kết nối với Postgres qua PHP nhưng có thể kết nối từ dòng lệnh và PgAdmin trên máy khác

  2. Nhận số lượng khóa ngoại từ nhiều bảng

  3. xoay / chuyển dữ liệu hàng riêng biệt sang các cột có postgres

  4. Không thể xóa cơ sở dữ liệu

  5. SQL hai tiêu chí từ một nhóm