Веб-сервер та бази даних. Взаємодія клієнт-сервер
Модуль «Веб-технології»
Урок 29
Повторюємо
НАГАДАЄМО
Веб-сервер та бази даних
Цікаво
«Ця машина є сервером. НЕ ВИМИКАТИ!!» �
Веб-сервер — це програма, яка створює і повертає відповіді на запити веб-pecypcів клієнтами.
Поняття веб-сервера несе два змістових навантаження
Порядок дій опрацювання клієнтського запиту:
1) синтаксичний аналіз запиту;�2) перевірка повноважень;�3) зв'язування URL у запиті з ресурсом у файловій системі сервера;�4) побудова відповіді;�5) повернення відповіді клієнту, який звернувся із запитом. �
Як працює веб-сервер
Цікаво
Логотипи найпопулярніших веб-серверів
Apache
кросплатформний веб-сервер, добре працює як на Unix-, так і на Windows-серверах. Сервер і клієнт взаємодіють за протоколом HTTP
Apache відповідальний за безпечне з’єднання між двома машинами.
Веб-сервер працює з різними мовами програмування (PHP, Python, Perl та ін.) за�допомогою спеціального модуля Apache (mod_php, mod_python, mod_perl та ін.) �
Nginx
веб-сервер, перший реліз якого відбувся в 2004�році. Наразі він набув значної популярності.
Nginx було створено для розв’язування так званої «проблеми c10k» — проблеми 10 тисяч з'єднань. Це означає, що веб-сервери, що використовують потоки, не можуть обробляти запити користувачів більше ніж з 10 000 підключень одночасно.
�Веб-сервер Nginx має подійно-орієнтовану архітектуру, тобто він обробляє кожен вхідний запит в єдиному потоці. Він використовується сайтами з великою кількістю показів, такими як Netfl ix, Pinterest і Airbnb �
Apache Tomcat
HTTP-сервер, який обробляє додатки Java замість статичних сайтів.
Google Web Server, IBM HTTP Server (IHS), Oracle HTTP Server (OHS) — всі ці сервери базуються на Apache і доопрацьовані відповідно компаніями�Google, IBM та Oracle �
Опрацьовуючи HTTP-запит сервер Apache Tomcat виконує:
1) перетворення URL-запиту в шлях до файла у файловій системі сервера;�2) визначення, чи має запит дозвіл на доступ до файла;�3) ідентифікацію;�4) виклик обробника для створення відповіді;�5) передачу відповіді клієнту;�6) створення запису про запит у журналі �
NODE.JS
кросплатформений веб-сервер, що працює з одним потоком
Перевага в тому, що і клієнтська частина, і серверна частина написані однією мовою —�JavaScript.
Запити до бази даних можна робити, також використовуючи цю мову. �
PHP
Типи серверів
Сервер додатків (Application server)
Сервер баз даних
Пригадайте
Логотипи популярних реляційних БД�
НЕРЕЛЯЦІЙНІ БД
Потреба у складних веб-сайтах, що повинні бути швидкими при великих об’ємах даних, у веб-чатах, спонукала до створення нереляційних (NoSQL) БД.
дві підгрупи нереляційних БД:
1. розв’язує питання швидкодії під час роботи з великими об’ємами даних
2. дозволяє будувати ефективні «живі» веб-застосунки (такі як чати і новини в соцмережах). �
Послідовність роботи серверів
Аналізуємо. Обговорюємо
Взаємодія клієнт-сервер
Модель клієнт-сервер
Автентифікація (перевірка справжності)
Авторизація (перевірка повноважень)
HTTP-запит включає:
Методи передавання даних
метод HEAD
Метод PUT
оновити існуючий ресурс або створити новий,�якщо такого не існує��
Метод DELETE
вилучити вказаний ресурс
Взаємодія «клієнт — сервер» на прикладі статичного сайта
Порядок дій для роботи з динамічним сайтом
Порядок дій для роботи з динамічним сайтом
Взаємодія «клієнт — сервер» на прикладі динамічного сайта
Аналізуємо.Обговорюємо
Завдання для самостійного виконання
Домашнє завдання
Знайдіть відомості в Інтернеті про розвиток реляційних баз даних.
Результат роботи представте у вигляді презентації та надішліть вчителю на поштову скриньку