Russian Qt Forum

Qt => Работа с сетью => Тема начата: Ge от Январь 05, 2016, 19:19



Название: [QNetworkAccessManager] Увеличить количество одновременных подключений
Отправлено: Ge от Январь 05, 2016, 19:19
Здравствуйте форумчане.

Как увеличить число одновременных запросов к одному серверу\порту используя класс QNetworkAccessManager?
В документации сказано, что стоит ограничение в 6 запросов к одному серверу\порту.


Я отредактировал константу defaultHttpChannelCount в исходном файле qhttpnetworkconnection.cpp, но количество запросов увеличилось с 6 до 10.

До редактирования:
Код:
const int QHttpNetworkConnectionPrivate::defaultHttpChannelCount = 6;
После:
Код:
const int QHttpNetworkConnectionPrivate::defaultHttpChannelCount = 600;

Как тестировал:
Отправлял циклом запросы на свой сервер:
Код:
    for(int i = 0; i < 550; ++i)
        srv->wake(i);
На сервере делал задержку в одну секунду и отдавал ответ:
Код:
        int msec = 1 * 1000000;
        auto cmd = request.getParameterValues("comand");
        usleep(msec);
        response.out() << cmd.front();

В логе видно, что на сервер приходит по 10 запросов, когда ожидались все 550 "одновременно".


Название: Re: [QNetworkAccessManager] Увеличить количество одновременных подключений
Отправлено: Ge от Январь 06, 2016, 00:41
Количество подключений увеличилось, проверил на сервере товарища. Проблема решена.