170 похожих чатов

Https://T.Me/Nodejs_ru/544458 Ещё раз переспрошу. Ребята, правильно ли я понимаю что к примеру

нагрузку 100к рпс нода не держит и форкать кластером бесполезно?
Сколько максимум нода держит рпс?

Речь не идет про пропускную способность сети, днс балансировку, апаратную балансировку или програмную (то что не нодой делается, нгинкс, хапрокси), не про горизонтальное масштабирование.
Вопрос только про ноджс.
Понятное дело что нода в одном потоке на одном ядре. Где libuv? он на других ядрах?
Вот пришло к нам на машину на 80й порт 100к рпс. Один процес ноды не справляется.
Можно кластером форкнуть два процеса. Но они же вся равно через мастер процесс пойдут. Получается сколько мастер может обработать, столько может всё приложение и нет смысла раскатывать его на 30 ядер

38 ответов

22 просмотра

То есть у вас не справляется, и ты спрашиваешь, у всех ли тоже так?

Максим- Автор вопроса

у вас нода без балансировщика где то стоит?

Да. А почему ты отвечаешь несвязанным вопросом на мой вопрос?

Максим- Автор вопроса

нет. Хочу понять как принимаются решения о распределении нагрузки на большее количество ядер. Средствами ноды.

Максим- Автор вопроса

все запросы идут через мастер процесс?

Вся эта дискуссия смахивает на одно из двух: - очередной хабраблогер ищет "авторитетное мнение сообщества", чтобы охаять ноду - есть некий сервис с недодуманной/ошибочной архитектурой и вместо его исправления/усиления нужна причина для переделки на что-то "типа крутое" вроде жавы или плюсов Факт привязки к местности начисто отвергается

Пока не приходилось использовать кластер Хотя была такая архитектура, где основной процесс на ноде часть запросов проксировал в дочерние процессы, а ответы от дочерних - клиенту

Максим- Автор вопроса

опишу проще. У вас есть один ip на который на порт 80 приходит бесконечное количество запросов от пользователей и всё чаще. Сервер у вас один. На сервере бесконечное количество ядер и памяти. И вам нужно используя только ноджс обслужить как можно больше запросов. 1 - Какаие ваши действия? 2 - Сколько рпс по вашему обработает ваш сервер?

Максим- Автор вопроса

я больше тебя не спрашиваю не о чем. будь любезен и не отвечай мне больше. Ты просто хамишь мне без причины. Не надо мне это.

Максим- Автор вопроса

то есть у вас апка работает на одном процессе ноды?

А я с тобой разговариваю? Или не могу выразить свое мнение?

Максим- Автор вопроса

А про кого ты пишешь вот это? https://t.me/nodejs_ru/544586

У нас это где? Да и вообще что значит твой вопрос? Про дочерние процессы - это архитектура одного из проектов с предыдущего места работы. Там всё сложно, и основную нагрузку на себя как раз берут дочерние процессы, которые в общем случае вообще не на ноде написаны (основной на плюсах) На текущем месте работы микросервисы, но api gateway - да, один процесс на ноде

Я далеко не специалист, но помоему нода никаких ограничений не накладывает, какое железо, среда, такие и возможности)

Максим- Автор вопроса

У вас это там где не приходилось использовать кластер и всё хорошо работает. А этот апи гэтвей с какой нагрузкой работает? рпс?

Максим- Автор вопроса

то есть нода бесконечно быстрая и обрабатывает бесконечность rps?

Так нигде не приходилось же 🤷‍♂

Нет, но ты ведь и не сравниваешь её с другими языками, так-то она же ограничений не ставит, да и железо ты указал с бесконечными ресурсами, поэтому ответ бесконечные rps)

Максим- Автор вопроса

то есть везде где используете ноду, у вас работает один процес ноды на сервере и справляется сам в качестве фронта для бэков? Какие максимальные нагрузки ты видел на своих проектах. Речь до сих пор про ноду. Нагрузки на др платформах не интересуют

Ты пока тут спрашиваешь уже давно сам бы протестировал)

Да. Не могу ответить, т.к. почти все проекты были on-premises. Могу предположить, что до нагрузки в 500к в секунду не доходило

Максим- Автор вопроса

я автокэноном пострелял хэлоуворлд на экпресс. Но что-то не особо понял как я своим пк могу сделать 100к рпс к примеру.

Максим- Автор вопроса

я вот такую статью встретил сегодня https://habr.com/ru/company/ruvds/blog/439976/ и озадачился. Смысл так такой что на ноде 50к рпс это потолок.

А это для тебя является стопором? Всё, прощай нода, здравствуй пхп?

Максим- Автор вопроса

нет. Интересно стало. Какой предел? Как и когда ноды размазывать на ядра? и опять же подумал что если мастер процесс справляется только с 50к рпс, то когда то ядра не спасут и нужны уже другие средства.

Там в статье речь была о том, что мастер процесс не может принять больше 50к запросов?

Максим- Автор вопроса

нет, это я так подумал. Это не так?

Нет оснований думать, что это так

Максим- Автор вопроса

а какая цифра верная?

Ты хочешь одно число получить? На все варианты железа, ос, канала и прочих уникальных условий? Я такое число не знаю Встречный вопрос: а как ты думаешь, за счёт чего у других платформ это число будет другим?

Максим- Автор вопроса

Не в числе дело. Хочу понять как рассчитывают конфигурацию железа. Где смысл вертикального масштабирования заканчивается? И всякое такое. На основании чего принимают решение поднимать ещё один процесс ноды для одной и той же апки? Не ждут же люди 500х ошибок, а потом что-то делают.

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

Максим- Автор вопроса

Вообще изначально я не спрашивал о числах конкретных. И приводил их как «например». Ты знаешь, я устал жанглировать словами и уточнять вопросы для тебя. Каких то содержательных ответов я не получил. Давай закончим на этом.

Жонглировать пишется через о Ты не находишь симптоматичным то, что устаёшь уже от второго (минимум) человека? Может, то, что ты спрашиваешь, какой-то бред?

Максим- Автор вопроса

А о чём я спрашиваю? От первого человека я не устал. Мне неприятно было что он обсуждал мои умственные способности в чате.

Ты сам не определился, как мне кажется Вот смотри, первая версия вопроса: https://t.me/nodejs_ru/544458 Теперь ты пишешь, что хочешь понять какое выбрать железо Как-то совсем не связано с изначальным вопросом

Максим- Автор вопроса

Вопрос изначальный по прежнему интересует. Второе это объяснение цели вопроса. Думал прояснит что либо, но нет.

достаточно странное решение заменять хттп модуль ноды своей кастомной имплементацией

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта