Re: Listen queue overflow
Andrej Sossi <[email protected]> Mon, 4 Aug 2014 21:28:52 +0200
| Newsgroups | gmane.os.freebsd.italian.esperti |
|---|---|
| Organization | DOTCOM S.R.L. |
| Message-ID | <[email protected]> |
On 04. 08. 2014 18:11, Davide D'Amico wrote:
> Nessun messaggio di errore relativo al MaxClient raggiunto o hai
controllato quanti processi httpd hai nel momento in cui appare quel
messaggio?
> Che worker stai usando su apache24? Te lo fa anche con apache22?
Estratto del file /usr/local/etc/apache24/extra/httpd-mpm.conf
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
# MaxSpareServers 10
MaxSpareServers 20
MaxClients 600
ServerLimit 600
MaxRequestWorkers 250
MaxConnectionsPerChild 0
</IfModule>
Ho già cercato di aumentare, ma senza successo. Nei log di apache non
trovo nulla al riguardo. Ho solo un:
[mpm_prefork:warn] [pid 1415] AH00179: changing ServerLimit to 600 from
original value of 256 not allowed during restart
Come conseguenza dell'aumento dei parametri sopra.
On 04. 08. 2014 18:35, Andrea Brancatelli wrote:
> Ciao Andrej
>
> anche io ho lo stesso problema su un server di posta che riceve
numerose connessioni IMAP in ingresso.
>
> Dalle mie indagini dipende dal fatto che in pratica non c’è “nessuno”
che si faccia carico della connessione TCP entrante in tempo utile. In
pratica la porta è in Listen ma poi il sistema operativo non riesce ad
agganciarci un processo in un tempo ragionevole.
>
> Sinceramente io non ho trovato particolari soluzioni, quindi se trovi
qualcosa fammi sapere :-)
>
> Comunque non penso sia un problema di configurazione di Apache. Al
massimo bisognerebbe trovare il parametro di sysctl relativo alle
connessioni entranti, o alle dimensioni del buffer delle stesse.
>
> Tra l’altro penso che essendo un errore al livello TCP l’utente non
si accorga neanche di niente di particolare, e sia il protocollo stesso
a riprovare… no?
Sono d'accordo con le tue conclusioni o più correttamente è più o meno
quello che sono riuscito a capire leggendo altre discussioni in merito.
Quello che non riesco a capire è perché Il sistema Operativo non riesca
a trovare un processo di (httpd nel mio caso) che elaborare la
richiesta. Ho un altro server che è molto sotto stress a causa delle
risorse limitate e quando le supera e comincia a scaricare nella swap GB
il server risulta non reattivo e le connessioni restano appese anche
alcuni minuti prima che vengano effettivamente passate al processo.
Quest'ultima macchina è un FreeBSD 8.2 quindi la comparazione forse non
è così corretta.
In questo nuovo server ho risorse in abbondanza, quindi non dovrebbero
esserci casi simili. Anzi vorrei sfruttare al massimo le risorse del
server, ma dopo varie prove non sono riuscito a trovare dove dover agire.
@Davide D'Amico
Ripeto nuovamente, il server è un server web e-commerce. Mediamente non
ho un carico enorme, ma succede sporadicamente che ho dei picchi di
richieste. Alcune pagine prima di caricarsi possono impiegare fino a 2
secondi (caso di ricerca nel catalogo prodotti). Il problema è che
essendo questi casi troppo sporadici non riesco a vedere cosa sta
succedendo nel preciso istante dell'errore ne valutare la reale
reattività del server. Mi accorgo tipicamente il giorno dopo quando mi
arriva il messaggio 'daily security run output'.
> Il giorno 04 agosto 2014 16:02, Andrej Sossi <[email protected]> ha
scritto:
>
> On 04. 08. 2014 16:30, Davide D'Amico wrote:
>
> Mi sembra tutto corretto e per nulla 'sotto stress'; hai
provato a dare un'occhiata a questo articolo:
http://lawrencechen.net/2014/sonewconn-pcb-0xfffffe006acd9310-listen-queue?
>
> d.
> [...]
>
>
> Il server al momento non è sotto stress. Sinceramente mi sono
accorto della difficoltà solo dai log. Dato che è un server web subisce
dei picchi di lavoro che non sono prevedibili a priori. In più posso
dire che i messaggi spuntano numerosi solo una o due volte alla
settimana o anche una volta ogni paio di settimane. Questo mi rende
anche difficoltoso provare vari accorgimenti e configurazioni.
>
> Già verificato anche il blog citato. Se ho ben capito ha mostrato
tutto il procedimento che ha utilizzato per determinare quale processo
era sotto stress. Nel mio caso il processo è sicuramente apache httpd,
dato che è l'unico esposto pubblicamente. Nel blog però non scrive come
aumentare la coda o come permettere ad httpd di aumentare le risorse in uso.
>
> In un altro sito ho anche trovato il consiglio di modificare le
connessione ipc:
> sysctl kern.ipc.somaxconn=256
> Anche questo non ha limitato la comparsa dei messaggi di log.
>
>
> --
> Cordiali saluti
> Sossi Andrej
> -------------------------
> DOTCOM Information technology
>
> Via Trento, 16
> 34132 - Trieste (TS)
> Italy
>
> tel: +39 040 9828090
> fax: +39 040 0641954
> E-mail: [email protected]
> ----------------------------
>
> Ai sensi del D.lgs n. 196 del 30.06.03 (Codice Privacy) si
precisa che le informazioni contenute in questo messaggio sono riservate
e ad uso esclusivo del destinatario. Qualora il messaggio in parola Le
fosse pervenuto per errore, La preghiamo di eliminarlo senza copiarlo e
di non inoltrarlo a terzi, dandocene gentilmente comunicazione. Grazie
>
> This message, for the D.lgs n. 196 / 30.06.03 (Privacy Code), may
contain confidential and/or privileged information. If you are not the
addressee or authorized to receive this for the addressee, you must not
use, copy, disclose or take any action based on this message or any
information herein. If you have received this message in error, please
advise the sender immediately by reply e-mail and delete this message.
Thank you for your cooperation.
>
>
> _______________________________________________
> Esperti mailing list
> [email protected]
> http://mailman.gufi.org/mailman/listinfo/esperti
>
>
>
> --
> d.
> _______________________________________________
> Esperti mailing list
> [email protected]
> http://mailman.gufi.org/mailman/listinfo/esperti
--
Cordiali saluti
Sossi Andrej
-------------------------
DOTCOM Information technology
Via Trento, 16
34132 - Trieste (TS)
Italy
tel: +39 040 9828090
fax: +39 040 0641954
E-mail: [email protected]
----------------------------
Ai sensi del D.lgs n. 196 del 30.06.03 (Codice Privacy) si precisa che le informazioni contenute in questo messaggio sono riservate e ad uso esclusivo del destinatario. Qualora il messaggio in parola Le fosse pervenuto per errore, La preghiamo di eliminarlo senza copiarlo e di non inoltrarlo a terzi, dandocene gentilmente comunicazione. Grazie
This message, for the D.lgs n. 196 / 30.06.03 (Privacy Code), may contain confidential and/or privileged information. If you are not the addressee or authorized to receive this for the addressee, you must not use, copy, disclose or take any action based on this message or any information herein. If you have received this message in error, please advise the sender immediately by reply e-mail and delete this message. Thank you for your cooperation.
_______________________________________________
Esperti mailing list
[email protected]
http://mailman.gufi.org/mailman/listinfo/esperti