Joomla портал
seo seo Subscribe
0
seo

Технологические основы

реть технологические основы взаимодействия клиента и сервера в рамках

протокола HTTP.

Пользователь вводит URL, найденный на чьей-то визитке или на огромном

рекламном щите, что висит поперек дороги, в адресную строку браузера. Или

щелкает мышью по ссылке на уже открытой в окошке браузера

веб-странице. Или нажимает кнопку Найти в форме поисковика. Что происходит

дальше?

Клиентская программа, т. е. браузер, формирует HTTP-запрос. Этот запрос в

любом случае содержит точный URL того ресурса, к которому требуется

получить доступ (таким ресурсом вовсе не обязательно должна быть

вебстраница — пользователь может запросить ZIP-архив, PDF-документ,

звукозапись в формате МРЗ или объект любого другого типа).

Сообщения запроса и ответа в рамках протокола HTTP имеют общий формат.

HTTP-сообщение — это простой текст (имеется в виду, что любой человек

без каких бы то ни было лишних усилий может прочесть этот текст. В HTTP-

сообщениях нет «страшных» бинарных полей фиксированной длины,

характерных, например, для кадров или пакетов данных). Как запрос, так и ответ в

обязательном порядке предваряется начальной строкой (start line). Все

остальные элементы являются факультативными. За начальной строкой могут

следовать одно или несколько полей заголовка (каждое — на новой строке).

После заголовка начинается тело сообщения. Заголовок и тело отделяются

друг от друга пустой строкой.

Начальная строка имеет следующий формат:

метод URI версия_протокола

Пример возможной начальной строки клиентского запроса:

GET http://www.yandex.ru/ НТТР/1.1

Метод указывает, какое действие предполагается совершить с

запрашиваемым ресурсом. Примеры HTTP-методов: get (получить содержимое ресурса),

post (отправить данные на обработку), put (разместить данные на сервере),

delete (удалить ресурс), head (получить информацию о ресурсе без передачи

его содержимого) и пр.

Только два метода приводят к загрузке веб-страниц в окошко браузера — это

get и post. Метод get используется в подавляющем большинстве случаев: он

позволяет «без затей» получить указанный в начальной строке запроса ресурс.

Метод post применяется в тех случаях, когда требуется отправить на сервер

большое количество данных от пользователя (к примеру, результат

заполнения какой-нибудь анкеты). Небольшую порцию пользовательских параметров

можно передать на сервер и с помощью метода get (непосредственно в соста-

Глава 1. Устройство сайта

51

ве строки URL запрашиваемого ресурса после вопросительного знака —

о такой возможности мы уже говорили, рассматривая форматы URL).

Все остальные HTTP-методы будут интересовать нас значительно меньше.

Говоря о клиентских запросах в рамках данной главы, мы будем по

умолчанию подразумевать get- или POST-запросы.

Сервер обрабатывает запросы клиента в порядке общей очереди.

Поступающие запросы сохраняются в буфере — специально назначенной для этих

целей области памяти физической машины. Если запросы будут поступать

слишком часто, может наступить момент, когда сервер перестанет успевать

обрабатывать их все. В этом случае произойдет переполнение буфера, и часть

запросов попросту потеряется. Очевидно, что производительность

вебсервера по обработке клиентских запросов напрямую зависит от технических

характеристик используемого компьютера — в первую очередь, конечно же,

от быстродействия процессора и от объема памяти.

Подавляющее большинство реальных веб-проектов использует так

называемый виртуальный хостинг — схему, при которой на одной физической

машине средней, прямо скажем, производительности уживаются десятки и даже

сотни сайтов (тоже средненьких, с посещаемостью в районе нескольких сотен

человек в день). Как уже говорилось выше, веб-сервер можно настроить

таким образом, чтобы он обслуживал множество независимых виртуальных

хостов, которые извне ничем не отличаются от реальных веб-узлов, т. е.

могут обладать своими собственными доменными именами и даже, при

необходимости, выделенными IP-адресами.

Более серьезные сайты, с посещаемостью в десятки тысяч человек в день,

уже не могут довольствоваться возможностями виртуального хостинга —

такие проекты используют выделенные физические серверы: одна машина —

один сайт.

Но есть и такие проекты, которым недостаточно и выделенной машины,

пусть даже многопроцессорной и весьма высокопроизводительной.

seo
5th Фев 2011
Теги:
seo

Написать ответ

seo
 
seo
Все права защищены © 2023 Joomla портал
 
 
seo