Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
228
Добавлен:
17.04.2018
Размер:
1.99 Mб
Скачать

Интернет-программирование

МИЭТ, 2017

Лекция 1.

Введение в Интернет-программирование

Интернет-программирование. Краткая история

МИЭТ, 2017

1957 — Запуск СССР искусственного спутника.

1958 — Создание в США Агентство по перспективным оборонным научно- исследовательским разработкам - DARPA (Defense Advanced Research Projects Agency)

1962 – Старт в DARPA работ по созданию сети взаимодействующих коспьютеров, устойчивой к выходу из строя разных ее участков в результате ядерного удара СССР

1969 — 29 октября первое успешное испытание сети из двух :) компьютеров

1971 — программа для отправки по сети электронной почты

1984 — появление символьных доменных имен и серверов DNS

1989 — появление понятия Web (всемирной паутины): HTTP, HTML, URI в европейском CERN — лаборатории ядерных исследований

1993 — первый браузер Mosaic

1995 — создание координационного центра всемирной паутины W3C. Интернет и Web становятся синонимами.

Интернет-программирование. Персоналия

МИЭТ, 2017

Тим Бернерс-Ли

1989 год.

Предложение идеи всемирной паутины и разработка HTTP, HTML, URI, URL.

Бессменный руководитель консорциума W3C ( https://www.w3.org/ )

С 2004 года руководит созданием семантической сети т.е. такой надстройки над web, которая допускает удобный машинный анализ. Предполагается, что для этой цели будет использован язык RDF.

Интернет-программирование. Определения

МИЭТ, 2017

Интернет (Internet) — всемирная система объединённых компьютерных сетей для хранения и передачи информации на основе семейства протоколов TCP/IP.

Интернет-программирование — создание приложений для Интернета

Web (WWW) — всемирная система связанных между собою документов (информационных ресурсов - сайтов), просматриваемых преимущественно по протоколу HTTP (HTTPS) из семейства протоколов TCP/IP.

Web-программирование — создание приложений для Web

Клиент — тот у кого есть (предполагается) потребность

Сервер — тот у кого есть (предполагается) возможность

Протокол (сетевого обмена) — набор правил, позволяющий осуществлять соединение и обмен данными между двумя включёнными в сеть компьютерами

Сессия – период взаимодействия клиента и сервера в течение которого сервер хранит промежуточные данные взаимодействия между запросами клиента

Интернет-программирование. Архитектура клиент-сервер

МИЭТ, 2017

При получении запроса от клиента сервер создает сессию, присваивает ей идентификатор (SESSIONID) загружает необходимые ресурсы, исполняет запрос и отправляет их в ответ клиенту вместе с идентификатором сессии.

Интернет-программирование. Архитектура клиент-сервер

МИЭТ, 2017

Существует понятие статического и динамического контента. Файлы статического контента отдаются непосредственно самим web-сервером, для отдачи динамического контента web-сервер вызывает соответствующий обработчик (интерпретатор) файла, получает от него результат и передает его клиенту.

Интернет-программирование. Web-сервера

МИЭТ, 2017

Популярность использования основных web-серверов

Интернет-программирование. Web-сервера. Производительность.МИЭТ, 2017

Поскольку веб-сервер Apache при обработке статического контента все равно загружает модули обработки скриптов, то это приводит к нерациональному расходованию памяти.

Для решения этой проблемы, как правило применяют кеширующий сервер

Nginx

Интернет-программирование. Web-сервера. Nginx

МИЭТ, 2017

Сервер Nginx разработан Игорем Сысоевым в 2004 г.

2014 г. Конференция разработчиков высоконагруженных систем:

https://vimeo.com/117154512

Интернет-программирование. Web-сервера. Apache+Nginx

МИЭТ, 2017

Типовая настройка Nginx-фронтенд — Apache-бэкенд

Преимущества Nginx — скорость отдачи статического контента.

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

Еще одно неудобство Nginx - отсутствие локального файла конфигурации для сайтов, подобного .htacces в Apache.

Соседние файлы в папке Интернет технологии