// Разбираемся на примере нашего сайта.
⚡️ Обычный день: Кто-то смотрит программы, кто-то читает про поступление, кто-то оставляет заявку. Нагрузка распределена равномерно.
⚡️ День Х: Открывается важный этап приёмной кампании. Тысячи абитуриентов одновременно заходят на сайт, открывают страницы программ, проверяют условия поступления и отправляют заявки. Если в обычный день приходит 50 запросов в секунду, то сейчас — в десятки раз больше.
Вопрос: выдержит ли сайт не просто посещаемость, а пик?
👉 Отвечает Александр Парамонов, эксперт программы «Безопасность открытых информационных систем».
Обычно тут все и ошибаются: если сервер мощный, то система выдержит всё.
>> Но он ещё даже не напрягся, зато база данных уже задыхается из-за одного неудачного запроса или внешнего сервиса, который не рассчитан на такой поток.
Предел системы определяют не по цифре «у нас столько-то пользователей», а нагрузочным тестированием — постепенно увеличивают поток и смотрят, где начинают расти задержки, ошибки и очереди.
>> Это как градусник: показывает, когда система заболевает. Но чтобы понять, почему именно здесь затык, нужно профилирование и трассировка — они покажут, какой запрос или модуль тормозит. Причём иногда, чтобы выдерживать в несколько раз больше, не нужно покупать новые серверы: достаточно найти и исправить одно узкое место.
Поэтому инженеры смотрят не только на пользователей, но и на:
→ RPS — сколько запросов приходит в секунду;
→ concurrency — сколько операций выполняется одновременно;
→ latency — как быстро система отвечает. Здесь, кстати, есть очень важный момент: смотрят не на среднее время (оно обманчиво), а на перцентили — например, p95: сколько ждут 95% пользователей;
→ error rate — сколько запросов заканчиваются ошибкой.
И если реальная нагрузка всё-таки оказалась выше расчётной, хорошая система не должна просто рухнуть. Она должна уметь контролируемо деградировать, сохраняя самые важные функции.
>> Для этого используют кэширование, очереди, балансировку и автоматическое масштабирование. Но для сценария «все одновременно отправили заявки» особенно важны очереди: запрос не пишется в базу мгновенно, а встаёт в очередь и обрабатывается в фоне — так система не захлебнётся. И всё же волшебной кнопки нет: сначала нужно понять, где именно система может не справиться.
✅ Вот это и есть разговор о высоконагруженных системах.
Именно поэтому хороший сайт проектируют не под обычный день, а с запасом под тот самый момент, когда все пришли одновременно.
Попадали в такие ситуации? ⏳
#ИнтересноеНЕЙМАРК
