Новые узлы фильтрации: пропускная способность ×2,3, задержки −77%
Мы заменили серверы фильтрации, работавшие с 2022 года. Рассказываем простыми словами, что изменилось: скорость, задержки, процессоры, память и диски.
Весь трафик, который идёт к защищённым сайтам, сначала проходит через наши узлы фильтрации. Они проверяют каждый запрос, отсеивают атакующий трафик и передают дальше только настоящих посетителей. От того, насколько быстро работают эти серверы, зависит и скорость сайтов в обычный день, и то, сколько нагрузки мы выдерживаем во время атаки.
Старые узлы работали с 2022 года. За четыре года они отстали по всем важным параметрам: процессорам, памяти и особенно дискам. Их хватало для текущей нагрузки, но запас по мощности постепенно сокращался, а для следующего шага в скорости и устойчивости нужно было новое оборудование.
Доставка новых серверов заняла больше полутора месяцев. После этого мы установили их, прогнали через те же тесты, что и старые узлы, и перевели на них трафик. Сейчас новые узлы полностью заменили старые и обслуживают все запросы к защищённым сайтам. Ниже — что изменилось в цифрах.
Как мы сравнивали
Старые и новые узлы прогнали через одинаковые тесты в двух режимах:
- Базовый путь — сервер просто отвечает на запросы без проверок. Этот режим показывает предел самого железа.
- С логикой фильтрации — на каждом запросе выполняются проверки, как в реальной работе. Этот режим ближе к тому, что происходит при защите сайтов.
Скорость и задержки считали по медиане всех узлов каждого поколения, то есть по типичному узлу, а не по лучшему. Процессоры, память и диски сравнивали напрямую: один старый сервер против одного нового. Сколько именно запросов в секунду обрабатывает узел, мы не публикуем — приводим только прирост.
Скорость обработки запросов
Пропускная способность — это сколько запросов узел успевает обработать за секунду. На базовом пути новый узел справляется с объёмом, для которого раньше нужно было 2,3 старых, — это прирост на 132%. С логикой фильтрации прирост составляет 90%: один новый узел заменяет почти два старых. Разница между режимами объяснима — проверки нагружают процессор сильнее, чем простая отдача ответа.
Задержки
Задержка — это время, которое запрос проводит внутри узла, прежде чем уйти дальше к сайту. На базовом пути она сократилась с 509 до 118 микросекунд — в 4,3 раза. С логикой фильтрации — с 4,32 до 1,98 миллисекунды, то есть более чем вдвое.
Для посетителя это означает, что проход через защиту почти не добавляет времени к загрузке страницы. Для нас — что при всплеске трафика запросы не скапливаются в очереди так быстро, как раньше.
Процессоры и память
Одно ядро нового процессора работает на 61% быстрее старого, а процессор целиком, со всеми ядрами, — на 77% быстрее. Именно общая мощность важна для фильтрации: сервер обрабатывает тысячи запросов одновременно, и каждое дополнительное ядро берёт на себя часть потока.
Скорость работы с памятью выросла на 22%, а самой памяти на каждом узле стало вдвое больше. Это запас для хранения данных о подключениях и источниках трафика, который особенно нужен во время атак.
Диски
Самый большой разрыв — в дисках. На диск узел записывает журналы запросов и служебные данные, и во время атаки этот поток резко растёт. Медленный диск в такой момент становится узким местом.
| Операция | Старый узел | Новый узел | Разница |
|---|---|---|---|
| Последовательная запись | 1,27 ГБ/с | 10,4 ГБ/с | в 8,2 раза |
| Последовательное чтение | 6,96 ГБ/с | 11,9 ГБ/с | +71% |
| Случайное чтение 4K | 192 тыс. IOPS | 1,33 млн IOPS | в 6,9 раза |
| Случайная запись 4K | 149 тыс. IOPS | 2,03 млн IOPS | в 13,6 раза |
Последовательные операции — это чтение и запись больших файлов подряд, случайные — множество мелких обращений в разные места диска. IOPS — количество таких мелких операций в секунду.
Ещё важнее, как диск ведёт себя в худшие моменты. Показатель p99 — это время, за которое выполняются 99% операций; он показывает не среднюю скорость, а самые медленные случаи. На новых дисках эти задержки ниже в 51,6 раза при последовательной записи, в 2,9 раза при последовательном чтении, в 9,7 раза при случайном чтении и в 25,6 раза при случайной записи. Именно редкие медленные операции во время атаки приводят к тому, что данные начинают копиться, — теперь такой риск значительно меньше.
Новая сетевая архитектура
Замена серверов позволила заодно изменить то, как узлы подключены к сети. Старое оборудование ограничивало нас в выборе схемы подключения, поэтому новые узлы мы включили уже по другой сетевой архитектуре. Это само по себе сократило задержки: путь запроса от посетителя до узла и дальше к сайту стал короче.
Это только первый этап. Новая архитектура даёт больше возможностей для настройки маршрутов и подключений, и мы продолжаем над ней работать. После донастройки мы рассчитываем ещё сильнее ускорить прохождение запросов и снизить TTFB — время до получения первого байта ответа, то есть момент, когда браузер начинает получать страницу.
Что это даёт клиентам
Новые узлы уже принимают трафик, ничего настраивать не нужно. В обычном режиме запросы проходят через защиту быстрее. Во время атаки у сети больше запаса: тот же набор серверов выдерживает заметно больший поток, а сами серверы реже упираются в пределы железа.
Следить за состоянием своих проектов можно в рабочем пространстве, вопросы — в нашем Telegram-канале.