У нас есть система, которая делает вызовы веб-службы через прокси. Это кодируется в C # с использованием HttpWebRequest. У нас были проблемы со скоростью этих звонков в течение долгого времени, и я пытался их отследить. Несвязанный разговор привел к тому, что один из рабочих сказал, что порт, через который мы перебирались, использовал программное обеспечение брандмауэра, которое имело неоптимальную (читай: ошибочную) реализацию для переноса вызовов HTTP 1.1. Конечно же, я отбросил веб-запрос на использование HTTP 1.0 вместо 1.1, и скорость мгновенно удвоилась. Мы уже отключили функцию поддержки активности, потому что она была слишком шаткой.
Итак, вопрос: в краткосрочной перспективе, есть ли какие-либо переменные, кроме keep-alive и версии HTTP, которые могли бы еще больше повысить скорость за счет изменения аспектов вызова HttpWebRequest? Полагаю, трудно сказать, не зная тонкостей программного обеспечения брандмауэра, чего я пока не знаю.
Что еще более важно, у них есть новая версия программного обеспечения на другом порту, которая, очевидно, намного, намного лучше и полностью поддерживает HTTP 1.1. Стоит ли ожидать значительного увеличения времени отклика, переключившись на HTTP 1.1 и keep-alives?