Điểm:3

Nginx max_conns giới hạn trên nhiều máy chủ

lá cờ br

Nếu tôi có hai khối máy chủ trong Nginx và cả hai đều sử dụng cùng một định nghĩa ngược dòng. Giới hạn max_conns sẽ hoạt động như thế nào trong trường hợp này?

Tôi giả định rằng cả hai khối máy chủ sẽ có giới hạn 100 kết nối tối đa và 90 kết nối liên tục. Vì vậy, tổng cộng, các khối máy chủ sau đây có thể có tổng cộng 200 max_conns?

ví dụ ngược dòng {
    máy chủ example.com:443 max_conns=100;
    giữ nguyên 90;
}

 người phục vụ {

            nghe 1.1.1.1:80;
            server_name proxy.site.net;
            proxy_pass https://example
            proxy_bind 1.1.1.1 trong suốt;
 }
 
  người phục vụ {

            nghe 1.1.1.2:80;
            server_name proxy.site.net;
            proxy_pass https://example
            proxy_bind 1.1.1.2 trong suốt;
 }

Nguồn gốc của tôi có giới hạn 100 kết nối đồng thời trên mỗi IP. Vì vậy, tôi đang phân chia lưu lượng bằng cách sử dụng các IP khác nhau cho mỗi khối máy chủ.Vì vậy, tôi muốn đạt được 100 kết nối đồng thời trên mỗi khối máy chủ (hoặc trên mỗi IP công cộng). Làm thế nào tôi nên làm điều đó?

Mục đích của việc có hai khối máy chủ là để có thể xử lý gấp đôi số lượng yêu cầu.

CẬP NHẬT:

Nguồn gốc là nhà cung cấp đám mây đã đặt một số giới hạn cứng đối với "kết nối trên mỗi IP" để tránh quá tải. Nguồn gốc nói rằng mọi địa chỉ IP có thể có tối đa 100 kết nối HTTP đồng thời. Nếu cùng một IP cố gắng thiết lập kết nối số 101, nguồn gốc sẽ gây ra lỗi. Vì vậy, tôi muốn sử dụng hai IP để có khả năng thiết lập 200 kết nối đồng thời đến điểm gốc cùng một lúc. Vui lòng trợ giúp nếu bạn biết những gì nên thay đổi trong mã của tôi để đạt được nó. â

CẬP NHẬT 2:

Dưới đây là mã mới nhất mà tôi đang sử dụng để đạt được 200 yêu cầu mỗi giây bằng cách sử dụng vòng quay DNS trên các IP công cộng của máy chủ của tôi.

Tôi có hai IP khác nhau đang lắng nghe trong hai khối máy chủ và hai tên ngược dòng khác nhau cho các khối máy chủ đó.

Bây giờ tôi giả sử rằng nếu 100 người sử dụng IP đầu tiên trong vòng tròn DNS và 100 người tiếp theo sử dụng IP thứ hai thì tôi sẽ có thể phục vụ đồng thời 200 người. Mặc dù nguồn gốc của tôi có giới hạn 100 kết nối trên mỗi IP.

Xin vui lòng cho tôi biết nếu mã này có vẻ đúng?

ví dụ ngược dòng {
    máy chủ example.com:443 max_conns=100;
    giữ nguyên 90;
}

ngược dòng ví dụ2 {
    máy chủ example.com:443 max_conns=100;
    giữ nguyên 90;
}

 người phục vụ {

            nghe 1.1.1.1:80;
            server_name proxy.site.net;
            proxy_pass https://example
            proxy_bind 1.1.1.1 trong suốt;
 }
 
  người phục vụ {

            nghe 1.1.1.2:80;
            server_name proxy.site.net;
            proxy_pass https://example2
            proxy_bind 1.1.1.2 trong suốt;
 }
djdomi avatar
lá cờ za
không, họ sẽ có 100 như đã đặt ở trên, nhưng tại sao bạn lại muốn sử dụng số đó vào thời điểm này?
lá cờ br
Vừa cập nhật câu hỏi, vui lòng đọc phần giải thích bên dưới mã mẫu.
djdomi avatar
lá cờ za
vẫn như vậy vì giới hạn mục tiêu được đặt thành 100. IMHO bạn đã không thay đổi bất cứ điều gì và giới hạn 100 cho mỗi IP sẽ không phải là trường hợp sử dụng thông thường, một ip có thể ăn hết tất cả các kết nối của bạn trong trường hợp đó, tôi tin đây vẫn là sự cố x và y và bạn có thể cần cho chúng tôi biết về phần phụ trợ, hơn nữa tôi tin rằng bạn muốn đọc [hướng dẫn sử dụng](https://docs.nginx.com/nginx/admin-guide/security-controls/ kiểm soát-truy cập-proxy-http/)
lá cờ br
Nguồn gốc là nhà cung cấp đám mây đã đặt một số giới hạn cứng đối với "kết nối trên mỗi IP" để tránh quá tải. Nguồn gốc nói rằng mọi địa chỉ IP có thể có tối đa 100 kết nối HTTP đồng thời. Nếu cùng một IP cố gắng thiết lập kết nối số 101, nguồn gốc sẽ gây ra lỗi. Vì vậy, tôi muốn sử dụng hai IP để có khả năng thiết lập 200 kết nối đồng thời đến điểm gốc cùng một lúc. Vui lòng trợ giúp nếu bạn biết những gì nên thay đổi trong mã của tôi để đạt được nó.
djdomi avatar
lá cờ za
thêm cái này dưới dạng cập nhật chứ không phải bình luận
lá cờ br
Vui lòng xem "bản cập nhật 2" của tôi trong câu hỏi và xem liệu nó có thể giúp tôi đạt được hơn 100 kết nối đồng thời hay không.
djdomi avatar
lá cờ za
có thể hoạt động, hãy tải thử và xác minh, bạn không cần chỉ định cổng mặc định nếu https trên 443 được sử dụng, chỉ cần cổng trong trường hợp không phải là 80 cho http hoặc 443 cho jttos

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.