Блог

Що таке зворотний проксі?

  • Mar 19, 2024, 12:30 AM
  • 3 хвилини

Визначення

Зворотний проксі, зворотний проксі-сервер, реверсивний проксі (reverse proxy) - це комплекс комп'ютерних програм, який призначений для контролю та розподілу вхідного трафіку між серверами веб-ресурсу.


Коли десятки мільйонів людей з усього світу приходять на Youtube, саме блок підсистем вирішує, з якого конкретного сервера брати відео та транслювати користувачеві. В основі цього блоку лежить зворотний проксі.

За неофіційними даними, у Youtube понад 2,5 мільйона серверів у 30+ дата-центрах на різних континентах. Для швидкої та надійної роботи сервісу важливо розподіляти вхідні запити та повертаємі потоки.

Приклади програмного забезпечення

На момент написання статті найбільш відомі наступні зворотні проксі:

  • Nginx;
  • Apache;
  • Caddy;
  • HAProxy;
  • Envoy;
  • Traefik.

Деякі з цих програм спочатку створювалися з іншими завданнями та цілями, тому функціонал набагато більший, ніж у зворотного проксі. Зокрема, вони можуть виконувати функції веб-сервера, поштового сервера, прямого проксі тощо.

Які завдання вирішує зворотний проксі

Балансування навантаження

Якщо веб-ресурс розташований на кількох серверах, то зворотний проксі розподіляє вхідні запити рівномірно між ними.

Перевірка стану серверів

Якщо будь-який сервер тимчасово виходить з ладу, то зворотний проксі "відчуває" це і припиняє направляти запити на нього. Після відновлення роботи сервера, запити автоматично починають надходити на нього.

Декілька серверів в одному URL

За допомогою зворотного проксі з'являється можливість розміщення декількох серверів і навіть кластерів під одним URL.

Стиснення вмісту

Зворотний проксі може стискувати інформацію для користувача ще на боці веб-ресурсу.

Цей прийом значно прискорює відправку даних. Користувач отримує інформацію у стислому вигляді. Браузер "розпаковує" її за допомогою процесора користувацького пристрою, а не завантажує все через Інтернет.

Прискорення веб-сайтів (кешування запитів)

Прискорення роботи сайтів за допомогою зворотного проксі здійснюється шляхом кешування (запам'ятовування) статичного та динамічного контенту, який надається сайтом.

Наприклад, якщо зворотний проксі відеохостингу "розуміє", що певний ролик користується підвищеною популярністю (багато запитів на його перегляд), то він може кешувати його і при наступних зверненнях не шукати потрібний сервер, а відразу надавати інформацію, причому ще й у стислому вигляді.

"Підкормка"

У більшості сучасних сайтів сторінка будується динамічно. Тобто користувач завантажує інформацію з бази даних сайту, а сама сторінка збирається браузером вже на пристрої користувача.

Якщо зв'язок з користувачем повільний, то сервер витрачає більше часу на видачу даних, ніж міг би. Тому можна налаштувати так, що сервер почне повністю передавати дані зворотному проксі, а проксі, "по чайній ложці", буде "годувати" повільного клієнта, а сервер швидко звільниться для виконання інших завдань.


Програмний файервол

Захист від DDoS-атак у більшості випадків будується за допомогою налаштування зворотного проксі для пропуску/блокування вхідного трафіку.

Блокування здійснюється на основі правил, які дозволяють системі відрізняти звичайних користувачів від зловмисників. Одним з таких правил є "Ліміт звернень".


Забезпечення SSL/TLS трафіку

Якщо веб-ресурс не підтримує роботу з зашифрованою інформацією, тобто не може приймати і віддавати HTTPS-трафік, то за допомогою встановлення і налаштування зворотного проксі цю проблему можна вирішити.


A/B тестування

Цей вид тестування застосовується для перевірки гіпотез про поведінку користувачів при роботі з однотипними, але зробленими по-різному сервісами. Наприклад, двома посадочними сторінками, виконаними в різному дизайні.


Захист інформації про сервери

При відповідних налаштуваннях зворотний проксі може приховати інформацію про сервери, що знаходяться після нього. Це є додатковим заходом захисту веб-сервісу - зовнішні системи не зможуть визначити IP адреси та місцезнаходження серверів.

Підсумок

Зворотний проксі-сервер - це програмне забезпечення, а не апаратне забезпечення. Це ПЗ розташоване на боці веб-ресурсу і призначене для фільтрації вхідного трафіку з перенаправленням його на сервери, балансування навантаження, прискорення роботи, захисту ресурсу від зовнішніх атак.

Спробуйте наші мобільні проксі

У OnlineProxy ви знайдете мобільні проксі з усього світу з добовою тарифікацією від 0.7 $ та ротацією IP. Проксі чудово підходять для робочих завдань. Ми гарантуємо якість чи повертаємо гроші.

Зареєструватись