Поддержание одновременных соединений в HTTP?

Мне нужно поддерживать несколько активных соединений AJAX с длинным пулом к ​​веб-серверу.

Я знаю, что большинство браузеров не допускают более двух одновременных подключений к одному и тому же серверу. Вот что говорится в протоколе HTTP 1.1:

Клиенты, использующие постоянные соединения, ДОЛЖНЫ ограничивать количество одновременных соединений, которые они поддерживают с данным сервером. Однопользовательский клиент НЕ ДОЛЖЕН поддерживать более 2 соединений с любым сервером или прокси. Прокси ДОЛЖЕН использовать до 2*N подключений к другому серверу или прокси, где N — количество одновременно активных пользователей. Эти рекомендации предназначены для улучшения времени отклика HTTP и предотвращения перегрузки.

Предположим, что у меня есть 2 поддомена Server1.MyWebSite.Com и Server2.MyWebSite.Com, использующих один и тот же IP-адрес, смогу ли я установить 2x2 одновременных подключения?


person Lotfi    schedule 05.08.2009    source источник


Ответы (3)


Похоже, что разные имена хостов на одном и том же IP-адресе могут быть полезны. Вы можете столкнуться с проблемами при создании AJAX-соединений из-за такой же политики происхождения.

Изменить: в соответствии с вашим вопросом document.domain (из Руководства по безопасности браузера Google) :

Проверки целей XMLHttpRequest не учитывают document.domain...

person Steven    schedule 05.08.2009
comment
Что-то вроде этого решит prb ? document.domain = Мой веб-сайт. - person Lotfi; 06.08.2009

Это будет на 100% зависеть от браузера. Некоторые могут основывать ограничение на 2 подключения на доменном имени, некоторые могут на IP-адресе.

Другие позволят вам делать столько, сколько хотите.

person Randolpho    schedule 05.08.2009

Ни один браузер не устанавливает лимит подключения на основе IP-адреса. Все браузеры основывают ограничение на указанном полном доменном имени.

Следовательно, да, было бы совершенно нормально иметь псевдоним DNS для вашего сервера, хотя более ранний ответ верен, что XHR потребует, чтобы вы использовали доменное имя страницы для XHR и использовали псевдоним для загрузки статического контента (изображения, и т. д.) на странице.

Между прочим, современные браузеры обычно увеличивают лимит соединений до 6 или 8 соединений на хост.

person EricLaw    schedule 08.10.2009