2013-06-02 10 views
12

Mam gniazdo nasłuchu na porcie 80 na systemie Ubuntu Linux.Jak uzyskać BACKLOG z gniazda nasłuchującego

tcp 0 0 0.0.0.0:80  0.0.0.0:* LISTEN 12248/nginx 

Czy istnieje sposób na uzyskanie wartości zaległości tego gniazda (wartość zaległości wysłana do funkcji listen())?

Wiem, że mogłem wyświetlić konfigurację nginx, ale plik konfiguracyjny mógł zostać zmieniony bez ponownego ładowania nginx z nową konfiguracją, więc argument backlog w konfiguracji i rzeczywistym wywołaniu LISTEN może być inny.

Odpowiedz

-2

Brak standardowego interfejsu TCP API do pobierania zaległości. Nie ma również powodu, aby go potrzebować. Stworzyłeś gniazdo, przełączyłeś go w stan słuchania, powinieneś wiedzieć, jakie zaległości zostały określone. System ten jest uprawniony do regulacji w górę lub w dół, ale nawet wtedy nie ma nic przydatnego, co można zrobić z tymi informacjami w aplikacji.

+4

Nie ma nic pożytecznego do zrobienia z tymi informacjami, ponieważ nie było żadnego punktu na posiadanie więcej niż 640K pamięci RAM_. – Chucky

+0

@Chucky Faktem jest, że w ciągu 35 lat od zaprojektowania API BSD Sockets nikt nie widział możliwości dodania takiej funkcji, co oznacza, że ​​nie znaleziono fortu. Jeśli masz kontrprzykład, podaj go. Samo zestawienie dwóch niezwiązanych kwestii w rzeczywistości nie stanowi logicznego argumentu, ale to konkretne zestawienie jest źle dobrane do waszego celu. Błąd 640 000 został rozpoznany i rozwiązany w ciągu kilku lat. Brak API backlogu listen nigdy nie został rozwiązany, co pokazuje, że generatory implementatorów TCP/IP zgadzają się ze mną. – EJP

+0

Komunikat o błędach dla operatora jest jednym z powodów. Pokazywanie, że zaległości są trafione, jest kolejnym, w celu ujawnienia stanu ładowania. – aredridel

15

ss -lt podaje tę wartość w kolumnie Wyślij-Q.

Powiązane problemy