Я пытаюсь настроить IIS в качестве программного балансировщика нагрузки на Windows Server 2008 R2 для серверных частей, обслуживающих долгоживущие запросы потоковой передачи HTTP. Индивидуальные запросы curl работают нормально, но когда я использую httperf для создания 10 КБ подключений к IIS, текущие запросы кажутся максимальными на 2500 для каждого из двух бэкэндов, а не на 5000, как я ожидал. В очереди ли другие запросы? Если да, то есть ли способ обойти это? Мне нужно что-то еще изменить? Стоит ли использовать другой балансировщик нагрузки?
Похоже, вы ограничены максимальным лимитом одновременных запросов ARR. Вы можете проверить, изменив алгоритм балансировки нагрузки на другой вес, и посмотреть, равна ли сумма двух узлов по-прежнему 5000. Это подтвердит, что ARR является узким местом.
Как ресурсы на сервере ARR? Могу поспорить, они хороши, и в этом случае дело просто в изменении настроек. Похоже, ARR делает для вас хорошую работу.
Ваш предел настройки, скорее всего, system.webServer / serverRuntime appConcurrentRequestLimit, который имеет значение по умолчанию 5000. Поскольку у вас есть законная потребность поднять это значение, вы можете установить его на гораздо более высокое значение на серверах ARR.