Какая польза от http не постоянный режим соединения
Это может показаться тривиальным вопросом, но все же.. У меня путаница по этому поводу.
Почти на каждом сайте я читал, что постоянные или поддерживающие соединение HTTP лучше, чем непостоянные. Кес: Итак, почему непостоянный даже существует?
Некоторые говорят, что постоянное имеет недостаток, если сервер обслуживает много клиентов, так как пользователи лишены соединения. Вопрос: Все популярные сайты обслуживают миллионы клиентов, значит ли это, что они не используют постоянный режим?
Насколько я понимаю, я думаю, что поисковые системы могут не использовать постоянные соединения.
Может кто-нибудь, пожалуйста, просветите меня по этой теме.
Еще одно сомнение у меня касается запросов HTTP. Я читал, что если страница содержит ссылку на несколько объектов, то веб-браузер запрашивает все эти данные (именно поэтому используются постоянные соединения). Я сомневаюсь, почему все объекты не встраиваются в страницу и отправляются как один объект? Если аргумент заключается в том, что он делает страницу тяжелой и не обеспечивает пропускную способность, то в любом случае браузер открывает параллельные соединения для выборки нескольких объектов, что снова создает одинаковую нагрузку на сеть.
Хорошо, я понимаю, что это не может быть сделано для поиска похожих изображений, но если страница содержит мало объектов, мы можем встроить их в страницу и отправить.
Это может показаться глупым вопросом, но я не могу помочь. У меня есть сомнения, и мне нужно это прояснить, и вы можете помочь. Спасибо
2 ответа
Исходная спецификация HTTP всегда использует непостоянные соединения; HTTP/1.1 добавил постоянство, потому что он более эффективен для веб-страниц, которые встраивают много внешних объектов (что было редко, когда был написан HTTP/1.0).
Однако, хотя HTTP/1.1 допускает постоянные соединения, существуют реализации, которые их не поддерживают или которые все еще поддерживают только HTTP/1.0. По этой причине HTTP/1.1 требует, чтобы Connection: keep-alive
заголовок будет отправлен для включения этой функции, и Connection: close
быть отправлено, чтобы отключить его.
Возможно включить медиа непосредственно в HTML с помощью base64, кодирующего данные и включающего его в data:
URL. Обычно это не делается, потому что это замедляет работу вашего веб-браузера. Со стандартной HTML-страницей браузер может начать рендеринг структуры страницы, не дожидаясь (довольно большого) встроенного data:
ссылки для скачивания.
Как вы говорите, большинство веб-страниц, размещенных в Интернете, будут обрабатывать не только меньше данных, и никто не может это оценить. HTTP-сервер должен быть универсальным и иметь механизм, позволяющий избежать множественных запросов во имя зависимостей. Вы говорите, что непостоянный метод предотвращает блокировку портов одним клиентом в течение длительного времени, когда серверу, возможно, придется обслуживать больше клиентов, и это вызовет много стресса, что не соответствует действительности. Постоянные соединения фактически снижают нагрузку на сервер, ограничивая количество запросов, которые он должен обслуживать.
Надеюсь, это постоянное соединение HTTP поможет вам понять.