socket e somaxconn

Ciao a tutti e bentrovati.

Ho dei dubbi che vorrei eliminare col vostrod'aiuto :-)

Tramite le funzioni socket del php ho costruito un motore per una chat.

Ora sono vincolato dalla costante SOMAXCONN (numero massimo di connessioni contemporanee) che è  settata di di default a 128 (sistema unix).

A quanto pare questa costante dipende dalla compilazione del kernel.

Ora penso a tutti quei server adibiti per chat (IRC) e p2p che hanno ben più di 1000 connessioni contemporanee e mi chiedo: sono tutti di kernek compilati ad hoc? Se si, perché il limite di default è così basso? Posso avere problemi se lo settassi a 1024? Altrimenti che metodo usano questi server per gestire migliaia di connessioni tcp/ip?

E giusto per curiosità: i sistemi IIS hanno un limite di 10 connessioni... e in rete non ho trovato nulla che possa farle aumentare nell'ordine delle migliaia. Sto capendo male io o stiamo parlando di cose differenti?

Spero di eliminare questi dubbi almeno domani, ho già perso una notte di sonno :p

ringrazio anticipatamente.

inviato 10 anni fa
chumkiu
X 0 X

Ma sicuramente de usi IIS non credo riuscirai ad risolvere il problema..

Hai provato con Apache?

 :bye:

risposto 10 anni fa
Marco Dario
X 0 X

Non sono su IIS, l'ultima domanda era solo per curiosità... :)

risposto 10 anni fa
chumkiu
X 0 X

 Su Win32, se viene passata la costante SOMAXCONN, il servizio sottostante responsabile dei socket valorizza backlog al massimo valore ragionevole. Non esiste un metodo standard per determinare il reale valore massimo su questa piattaforma.

Quindi windows XP pro max 10 connessioni...

Questo è quello che ho trovato girando...

per unix

http://130.192.86.168:8080/~federico/download/ProgrammazioneLinux.pdf#search=%22SOMAXCONN%20%22

In  poche parole ricompilare il kernel ad-hoc..  :buck:

 :bye:

risposto 10 anni fa
Marco Dario
X 0 X

Si è quello che ho trovato anch'io... ma il mio win xp home edition supporta fino a 64 connessioni...

allora o stiamo parlando di due cose diverse o non sto capendo io nulla :D

risposto 10 anni fa
chumkiu
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda