Làm thế nào để tôi biết tôi đang đến gần somaxconn như thế nào?


17

Tùy chọn sysctl net.core.somaxconnmặc định là 128 (trên hệ thống của chúng tôi) nhưng có thể được nâng lên.

  1. Chính xác thì giới hạn đo và giới hạn này là gì?

  2. Làm thế nào để tôi tìm ra mức độ gần với giới hạn?

Bối cảnh: Gần đây tôi có một vấn đề dường như được khắc phục bằng cách tăng giới hạn này. Vấn đề không liên tục, vì vậy tôi không tin rằng nó thực sự đã được sửa. Tôi muốn tìm hiểu xem số lượng [hiện tại của cài đặt này] có lớn hơn giới hạn tối đa 128 trước đó không.


Câu trả lời:


18

somaxconnxác định số lượng kết nối backlogged tối đa được phép cho mỗi cổng TCP trên hệ thống. Việc tăng nó (được khuyến nghị cho các máy chủ) có thể ngăn các thông báo "từ chối kết nối", nhưng nó có thể dẫn đến các kết nối chậm nếu máy chủ không thể xử lý tải tăng.

Bạn có thể kiểm tra tồn đọng hiện tại với netstat -ant | grep -c SYN_RECtheo trang này . Nó sẽ đếm xem có bao nhiêu kết nối ở trạng thái "SYN nhận được", nghĩa là hệ thống đã nhận được gói SYN (yêu cầu kết nối) nhưng chưa nhận ra nó.

Nếu hệ thống của bạn đã ssđược cài đặt, bạn cũng có thể sử dụng ss -sđể hiển thị một bản tóm tắt các kết nối. Tìm kiếm synrecvtrong đầu ra, hoặc ss -s | grep -Po '(?<=synrecv )\d+(?=,)'chỉ in số.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.