Назад | Перейти на главную страницу

Хорошая система для Ajax для отправки сообщений keepalive каждые N секунд на PHP без перегрузки сервера

У меня есть веб-сайт, на котором Javascript отправляет запросы HTTP POST Ajax каждые 5 секунд в сценарий PHP на сервере CentOS. Если я проверю netstat, Я вижу много связей в TIME_WAIT состояние (в основном от 6 до 9). И это только для одного пользователя. Но веб-сайт должен получать сотни, может быть, тысячи таких запросов каждые 5 секунд от пользователей, просматривающих веб-сайт. Затем сценарий PHP получает некоторые данные из БД, чтобы вернуть их пользователю. Поэтому мне интересно, хорошо ли мое текущее решение или не требует больших ресурсов для сервера.

Я изучил возможность изменения сетевых настроек на сервере, например, обычных net.ipv4.tcp_fin_timeout,

net.ipv4.tcp_tw_recycle и

net.ipv4.tcp_tw_reuse.

Но первый не имеет отношения к тому, сколько может быть соединений TIME_WAIT. И я бы предпочел не изменять эти настройки, потому что это веб-сервер для веб-сайта и т. Д., А не выделенный сервер только для сообщений поддержки активности.

Мне было интересно, может ли Ajax отправлять HTTP POST с использованием UDP, чтобы избавиться от накладных расходов, связанных с TCP, но это невозможно.

Это приводит меня к вопросам: что еще я могу сделать, чтобы сделать отправку сообщений поддержки активности как можно менее ресурсоемкими? Есть ли облегченная серверная служба, способная обрабатывать такие запросы?