Когда пользователь нажимает кнопку или открывает страницу, запрос не летит сразу в backend. По дороге он проходит несколько слоёв — и каждый может повлиять на результат.
1️⃣ Браузер
Формирует HTTP-запрос:
— URL
— метод (GET / POST)
— заголовки
— cookies, токены, тело запроса
📌 Уже здесь возможны проблемы: неправильные заголовки, кеш браузера, CORS.
2️⃣ CDN (если есть)
Запрос попадает в ближайший edge-сервер.
Что происходит:
— если контент закеширован → ответ сразу
— если нет → запрос идёт дальше
3️⃣ Reverse-Proxy
Первый «вход» в инфраструктуру приложения.
Может делать:
• SSL-терминацию
• проверку авторизации
• rate-limit
• модификацию заголовков
• проксирование дальше4️⃣ Балансировщик нагрузки
Если backend не один — запрос нужно кому-то отдать.
Что делает:
— выбирает инстанс приложения
— следит за доступностью
— может использовать sticky sessions
5️⃣ Backend (наконец-то)
Приложение:
— обрабатывает запрос
— работает с БД
— формирует ответ
Ответ идёт обратно тем же путём, и на каждом этапе может быть изменён или закеширован.
📍 Навигация: [Вакансии]
🎁 Новогодняя акция: 3 курса по цене 1
🤝 Помощь с выбором курса
🐸 Библиотека тестировщика
#теория_на_пальцах
