As portas de conclusão de E/S (Windows) ou E/S assíncrona (AIO) melhorarão o desempenho dos servidores multithread lidando com grande volume de solicitações?

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

Pergunta

Quero usar portas de conclusão de E/S para Windows e E/S assíncrona (AIO) para versões Solaris e Linux do meu aplicativo de servidor. O servidor de aplicativos é multithread e pode aceitar muitas conexões TCP simultâneas e pode processar muitas solicitações por conexão. Esses critérios são bem o suficiente para usar o mais recente AIO?. Existe alguma padronização usando qual código pode ser usado em todas as plataformas.

Obrigado, Naga

Foi útil?

Solução

Cada solicitação será tratada por um tópico separado separado.

Não é assim que as portas de conclusão de E/S funcionam no Windows ... elas permitem que você use um número muito pequeno de threads para processar grandes quantidades de E/S.

Por exemplo, aqui: http://www.lenholgate.com/blog/2005/10/the-64000-connection-question.html Eu falo sobre como lidar com 64.000 conexões TCP ativas simultâneas com cerca de 4 threads ...

Para Linux, espero que a rota seja usada Libevent.

Para a plataforma cruzada, alguém certamente sugerirá ASIO.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top