Время rps зависит от ядер машинки?

Привет, я не давно тестировал время одновременных запросов к серверу (сервер стоит на nodejs, использовал кластеризацию), на 4 ядерном компе с 8 гб оперативной памяти, он смог обработать 2.5k rps/sec, на 1 ядерном с 1 гб оперативной памяти только 0.5k rps/sec. У меня нету пока возможности протестировать на 20 ядерном компе с 64 гб оперативной памяти, хотел бы услышать ваш ответ, могу ли я предполагать что с таким компом, я смогу выдерживать примерно 20k rps/sec? Спасибо заранее
  • Вопрос задан
  • 513 просмотров
Решения вопроса 1
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
> могу ли я предполагать что с таким компом, я смогу выдерживать примерно 20k rps/sec?
Нет.

Накладные расходы на разбрасывание запросов после определенной цифры могут расти по экспоненте, в итоге вполне возможна ситуация, что вы не сможете выжать больше определенного числа, будь у вас даже 128 ядер и 1Т памяти в одну железку.
+ на цифрах в районе 10к+ запросов во что угодно уже нужно аккуратно настраивать систему под профиль нагрузки, так что при тех же настройках цифры в 20к вы не получите.

+ можете получите проблемы с IOPS (его на сервере будет не сильно больше, если только вы не тестили на sata, а сервер с ssd), с количеством дескрипторов и прочей мутью.

Такой подсчет в нагрузочном тестировании работает только в пределах 2-3 раз разницы в железе, но никак не тогда, когда разница выходит на 1.5 порядка.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
mannaro
@mannaro
Умею профессионально гуглить
nodeJS вообще однопоточный, вы о чем?
Ответ написан
HoHsi
@HoHsi
Зачем вам такие ухищрения? Поставьте load-balancer Nginx и несколько беков ноды. Так и скалировать легче, и должно выйти дешевле.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы