È porte I / O di completamento (Windows) o I / O asincrono (AIO) migliorerà le prestazioni di gestire grandi volumi di richieste i server multithread?

StackOverflow https://stackoverflow.com/questions/2490473

Domanda

Voglio usare I / O porte di completamento per Windows e I / O asincrono (AIO) per Solaris e Linux versioni della mia applicazione server. Il server di applicazione è multithread e può accettare sacco di connessioni TCP simultanee e in grado di elaborare molte richieste per conenction. È questo criterio abbastanza bene per utilizzare l'ultima AIO ?. C'è qualche standardizzazione utilizzando che un codice può essere utilizzato per tutte le piattaforme.

Grazie, Naga

È stato utile?

Soluzione

  

Ogni richiesta sarà gestito da   filo separato indipendente.

Non è così che I / O Ports completamento dei lavori su Windows ... Essi consentono di utilizzare un piccolo numero di thread per elaborare grandi quantità di I / O.

Per esempio, ecco: http: // www.lenholgate.com/blog/2005/10/the-64000-connection-question.html parlo di gestire 64.000 connessioni simultanee TCP attive con circa 4 fili ...

Per Linux mi aspetto che la strada da percorrere è quella di utilizzare libevent .

Per la piattaforma trasversale qualcuno è sicuro di suggerire ASIO .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top