Компания «НагрузТест» — SaaS-платформа для нагрузочного тестирования. Сервер: 64 CPU, 256 GB RAM, 10G NIC. При 50,000 одновременных соединений начинались потери пакетов и рост latency. Дефолтные настройки Linux рассчитаны на десктоп с 4 ГБ RAM, не на сервер с четвертью терабайта.
# Типичные дефолты vs production-значения
sysctl net.core.somaxconn # 4096 (нужно 65535)
sysctl net.ipv4.tcp_max_syn_backlog # 1024 (нужно 65535)
sysctl net.core.netdev_max_backlog # 1000 (нужно 50000)
sysctl vm.swappiness # 60 (нужно 1-10)
cat /proc/sys/fs/file-max # 65535 (нужно 2000000)
Три области тюнинга с максимальным эффектом:
- Сеть (TCP/IP стек) — буферы, backlog, TIME_WAIT
- Дисковый I/O — планировщик, readahead, dirty pages
- Память — hugepages, swappiness, overcommit, NUMA
Комментарии 0