Я использую nginx в качестве переднего сервера, в основном для обслуживания статических файлов и для балансировки нагрузки. Я использую директиву keepalive_timeout 15. Но есть что-то, чего я не понимаю. На моей домашней странице моего веб-сайта много запросов, около 80. Есть несколько изображений, миниатюр, javascript и css-файлов и т. Д. Теперь, если keepalive будет открывать соединение между клиентами и сервером, почему, когда клиент запрашивает мою домашнюю страницу, 80 открытых соединений в течение 15 секунд? Я обнаружил это с помощью netstat или tcptrack.Директива Nginx keepalive, возможно, не работает
Моя проблема в том, что я пытаюсь предотвратить небольшие (d) атаки dos с ddos defilate, которые периодически запускают команду netstat, которая проверяет, сколько соединений открыто для каждого клиента ip и запретить все ips, у которых есть более «myvariable» подключения открываются. Но если кто-то попросит домашнюю страницу, затем для другой страницы, а затем для другой, если он сделает это очень быстро, будет 150+ открытое соединение, потому что для каждого http запросите, что соединение открыто в течение 15 секунд, и я хочу избежать его. Может быть, я что-то не понимаю?
с keepalive off Я уверен, что создаю новое соединение для каждого req..and я хочу избежать этого! Я использую limit_req_module для предотвращения наводнения. Я могу ограничить количество соединений parrallel от одного и того же клиента, но таким образом мой сервер будет медленным. Я просто хочу, чтобы директива keepalive работала хорошо: D: D – Radar155