Здравствуйте. Ради интереса поднял на hyper-v 2008 R2 виртуалку с ubuntu 20.04.6. Другая не стала.
поставил туда nodejs и сварганил простой сервер на express. Просто Hello World
запустил сервер, натравил с другой машины apache bench.
ab -n 10000 -c 10000 -g address
и получил 260-300 запросов в секунду.
Сеть между машиной и сервером с вируталкой загружена максимум на 1.5 процента.
в ubuntu по top показывает, что загрузка нодой процессора скачет 13-30 процентов. 30 это максимальное и только всплеском.
Оперативки в виртуалке 2 гига. свободно 140 метров. во время теста не сильно меняется.
1 vCpu
Собственно а чего так медленно то? 300 ответов в секунду и загрузка проца посредственная и сеть не загружена.
'другая машина' в этой же локальной сети? пробовал тот же тест запускать с этой же машины?
что за железо то? типовой десктоп даст ~7к-10к rps
hello world действительно только выводит текст, ни к какой базе не подключается?
Машина в той же. Железо - к сожалению сервак лет 13 от роду. Смущает другое. Почему сама убунта показывает низкую загрузку цпу.
К базе не подключается
С этой же не пробовал . Попробую
sergq2022, совет, попробуй любой другой веб сервер (не на основе js а нативный типа nginx или apache), протестируй его hello world, чтобы исключить другие причины тормозов.
Например если и нативный будет тормозить, значит проблема либо в сети либо... я хз, в виртуализации? ну проверь работу веб сервера без виртуализации, нативно под windows
получил примерно 650-850 RPS. При этом top показывал честную почти 100 процентную загрузку вируталки
на локальном компе и сервер и cannon - 6000 rps. на одном ядре.
Это получается у меня виртуалка на порядок слабее чем не очень новый комп?)
Единственное не особо понятно как кореллируется параметр -с у autocannon с работой реального сервера.
Я так понимаю, что с параметрами -d 100 -c 30 создается 30 соединений и 100 секунд через них бомбит сервер.
Но ведь если взять реальный веб-сервер, то там будет такая картина - каждый клиент создает соединение, дергает данные и закрывает соединение. Те на 6000 rps будет открыто-закрыто 6000 соединений
машины 13-летней давности медленнее мультипоточных задачах раз в 10
виртуализация роняет производительность еще процентов на 10%-30%
но 300 запросов в секунду это что то за гранью, такую скорость даст машина если виртуализация была бы без аппаратного ускорения (т.е. еще раз в 10 медленнее)