boost :: asio :: write levando tempo enorme enquanto grava dados em um determinado momento

0

Eu escrevi um programa no Linux em C ++ que se conecta a um servidor e envia / recebe dados usando boost::asio write / read .

No horário de pico quando o servidor é iniciado, pois pode haver um número de usuários enviando dados para obter prioridade naquele momento específico, boost::asio::write está demorando em milissegundos (30+ ou às vezes 60), enquanto no caso normal está levando alguns microssegundos. Não há carga no meu sistema nesse momento.

Eu passei pela Internet, mas não achei nada útil. Todo mundo está dizendo que o sistema irá escrever no buffer do kernel. Se for esse o caso, por que a chamada para boost::asio::write está demorando muito?

Eu defini m_socket.set_option(tcp::no_delay(true));

Sugira o que posso fazer para resolver este problema.

    
por G.S. Janjua 21.03.2018 / 07:24

0 respostas