LINUX.ORG.RU
ФорумAdmin

TCP - много исходящих запросов

 , ,


0

2

Есть vps. На нем стоит приложение на NodeJs. Делается большое количество исходящих POST запросов. Примерно 400 000 за 3 минуты. Раньше использовался keep-alive и было все быстро. Сейчас к сожалению keep-alive нет возможности использовать (нужно на каждый новый запрос новый ip иметь) На данный момент скорость сильно падает. Т.е. начинается с нормальной скоростью, но так минут 5 и дальше начинает падать

Попробовал разнести запросы по разным серверам. Поднял еще один. Отправляю туда по ajax набор данных и получаю обратно результат обхода всех обходов. До 350 запросов все хорошо. Но если отправить на обход 500, то второй сервер все нормально обходит и отправляет обратно, но на первом сервере этот ajax запрос зависает

Пробовал разобраться в TCP, пробовал разные настройки. Текущий sysctl.conf выглядит так

net.ipv4.tcp_fin_timeout = 10
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
fs.file-max = 91920
net.core.netdev_max_backlog=10000
net.core.somaxconn=10000
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_keepalive_probes = 2
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_moderate_rcvbuf =1
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_max_syn_backlog=20000
fs.file-max=14000000
fs.nr_open=14000000
net.ipv4.tcp_slow_start_after_idle=0
net.ipv4.tcp_fastopen=1
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
net.ipv4.tcp_timestamps=0
net.ipv4.tcp_sack=1
net.core.netdev_max_backlog=150000
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_synack_retries=1

Вывод ss -s

Total: 7047
TCP:   11026 (estab 5380, closed 4754, orphaned 56, timewait 4754)

Transport Total     IP        IPv6
RAW	  1         1         0        
UDP	  18        17        1        
TCP	  6272      6260      12       
INET	  6291      6278      13       
FRAG	  0         0         0

Прошу помощи разобраться. Можно за денежку

т.е. вы в приложении мониторите скорость tcp коннекта и видите что время tcp коннекта увеличиивается? или время ответа веб сервера?

может вместо vps попробовать железный linux иначе ХЗ что в «железной» Linux происходит. железный linux под вашим управлением?

какой тип VPS? openvz(virtuozzo) ?

Vlad-76 ★★★★
()
Последнее исправление: Vlad-76 (всего исправлений: 1)
Ответ на: комментарий от anonymous_sama

Вроде ничего такого нет

device ens1 left promiscuous mode
[7260857.059829] device ens1 entered promiscuous mode
[7260866.543877] device ens1 left promiscuous mode
[7260979.675059] device ens1 entered promiscuous mode
[7260983.555155] device ens1 left promiscuous mode
[7261102.370341] device ens1 entered promiscuous mode
[7261103.250681] device ens1 left promiscuous mode
ontegor
() автор топика
Ответ на: комментарий от ontegor

Не смотря на это я все равно думаю, что проблема в твоем коде. Если сможешь дать доступ к коду, могу посмотреть. Как простой вариант же могу предложить тебе попробовать рестартить сервис через systemd каждые 5-10 минут и сбросить все настройки в sysctl, кроме начинающие с fs.

anonymous_sama ★★★★★
()
Ответ на: комментарий от ontegor

Можешь оставить здесь или отправить на ehdatg в телегу. Если будешь писать в телегу, представься, что с лора, а то туда слишком много мошенников пишут

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)
Ответ на: комментарий от ontegor

большое количество исходящих POST запросов. Примерно 400 000 за 3 минуты.
нужно на каждый новый запрос новый ip иметь

Где такое нужно, кроме спама (лайками)?

LamerOk ★★★★★
()

Делается большое количество исходящих POST запросов. Примерно 400 000 за 3 минуты.

@

нужно на каждый новый запрос новый ip иметь

Наверное, вам стоит немного более раскрыть детали - для чего вы так засираете интернет. Вряд ли кто-то будет помогать ддосеру/спамеру/накрутчку, а пока это выглядит именно так.

Obezyan
()
Ответ на: комментарий от ontegor

Это парсинг данных маркетплейсов

Я как раз один из тех кто периодически вынужден отбиваться от таких вот собирателей данных с eCommerce проектов по всему миру. В основном, конечно, это китайские боты «поисковики» которых отлавливает обычный fail2ban, но бывают и такие персонажи как Вы, меняющие адреса на каждый запрос. Надеюсь, что никакой помощи вы тут не найдете.

Obezyan
()