Tôi là tác giả của pg-promise .
Có một số cấp độ tối ưu hóa cho truyền thông cơ sở dữ liệu. Điều quan trọng nhất trong số đó là giảm thiểu số lượng truy vấn trên mỗi yêu cầu HTTP, bởi vì IO đắt tiền, nhóm kết nối cũng vậy.
- Nếu bạn phải thực hiện nhiều truy vấn cho mỗi yêu cầu HTTP, hãy luôn sử dụng các tác vụ, thông qua phương thức tác vụ .
- Nếu nhiệm vụ của bạn yêu cầu một giao dịch, hãy thực hiện nó như một giao dịch, thông qua phương thức tx .
- Nếu bạn cần thực hiện nhiều lần chèn hoặc cập nhật, hãy luôn sử dụng các thao tác trên nhiều hàng. Xem Chèn nhiều hàng với pg-promise và cập nhật nhiều hàng PostgreSQL trong Node.js .
node-postgres bắt đầu sử dụng pg-pool từ phiên bản 6.x, trong khi pg-promise vẫn còn trên phiên bản 5.x sử dụng triển khai nhóm kết nối nội bộ. Đây là lý do tại sao .
Thực tế lâu dài của tôi trong lĩnh vực này cho thấy:Nếu bạn không thể phù hợp với dịch vụ của mình vào một nhóm 20 kết nối, bạn sẽ không được cứu bằng cách chuyển sang nhiều kết nối hơn, thay vào đó bạn sẽ cần phải sửa việc triển khai của mình. Ngoài ra, khi trên 20 tuổi, bạn bắt đầu gây thêm căng thẳng cho CPU và điều đó chuyển thành chậm hơn nữa.
Kích thước của dữ liệu không liên quan gì đến kích thước của pool. Bạn thường chỉ sử dụng một kết nối cho một lần tải xuống hoặc tải lên, bất kể dung lượng lớn như thế nào. Trừ khi việc triển khai của bạn bị sai và bạn sử dụng nhiều hơn một kết nối, khi đó bạn cần phải sửa nó, nếu bạn muốn ứng dụng của mình có thể mở rộng.
Nó sẽ đợi kết nối khả dụng tiếp theo.
Xem thêm: