Являются ли брандмауэры узким местом для постоянных http-соединений?

Я создаю клиент-серверное приложение, в котором клиенты будут использовать долгоживущие http-сессии для передачи данных с сервера клиенту (иногда называемые http-push, обратным ajax, server push, long-polling, http1.1 и т. д. )

Если у меня есть потенциально тысячи или сотни тысяч клиентов, поддерживающих открытые подключения к серверной среде, существуют ли общие политики для брандмауэров/балансировщиков нагрузки для прекращения сеансов, если они открыты слишком долго? Имеют ли брандмауэры/балансировщики нагрузки ограничения масштабируемости, когда они могут размещать только максимальное количество открытых соединений (даже если данные не отправляются)?

Я надеюсь, что брандмауэры и балансировщики нагрузки имеют функции с Http 1.1, чтобы поддерживать сеансы открытыми, не занимая ресурсы процессора и памяти. Если это не так, то брандмауэр является узким местом для количества одновременных открытых одновременных подключений.


person Asad    schedule 16.07.2011    source источник


Ответы (1)


Что ж, если вы все делаете правильно, ваши сеансы HTTP не должны быть такими длинными. В большинстве реализаций чата, использующих COMET и BOSH (или что-то подобное), соединения не удерживаются открытыми дольше одной или двух минут (после чего делается новый запрос на повторное установление HTTP-соединения).

person Kirk Woll    schedule 16.07.2011