Автор Тема: Тем кто держит сервер либо vps или vds!  (Прочитано 100 раз)

0 Пользователей и 1 Гость просматривают эту тему.

swergАвтор темы

  • *
  • Оффлайн
  • Награды Более 100 сообщений Более 10 созданных тем Более 2 лет на форуме
  • Дата регистрации: Янв 2016
  • Расположение: Киров, Кировская область, Россия
  • Возраст: 42
  • Сообщений: 139
  • Страна: ru
  • Поблагодарили: 15 раз(а)
  • Репутация +0/-1
  • Пол: Мужской
  • Дата рождения:1975-11-22
    • Награды
  • Социальные сети:
    ВКонтакте
5
Тему оценили 1 раз
Улучшить быстродействие системы можно таким способом!

worker_processes лучше ставить в auto на последних версиях nginx.
worker_connections 4000; - это очень мало для нормального проекта типа профит центра того же. Мы даём максимальное кол-во соединения это 65536.
По мимо этого nginx даже не сможет принимать твои 4000 одновременных соединения. А максимум 2048! так они ограничены в ядре самой операционной системы.
Пофиксим sysctl:
net.core.somaxconn = 131072
и для очереди:
net.ipv4.tcp_max_syn_backlog = 65535
net.core.netdev_max_backlog = 65535
полуоткрытые убиваем (очень важные строчки)!!!:
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
Увеличиваем диапазон портов:
net.ipv4.ip_local_port_range = 1024 65535
не забываем рубить соединения (отстроить таймауты)дабы не получить сусфлуда и забития интернет канала:
net.ipv4.tcp_fin_timeout = 15
net.ipv4.tcp_keepalive_probes = 5
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.tcp_keepalive_time = 15
выставляйте приоритет nginx дабы при ддосе он не загнался и продолжал обрабатывать запросы:
worker_priority -2;
a:0:{}
 
Теги:
 

виртуальный сервер

Автор best2015Раздел Разговоры обо всём

Ответов: 0
Просмотров: 348
Последний ответ 25 Октябрь 2016, 20:58:29
от best2015
Имя пользователя:
Пароль:
Session: