Size: a a a

Node.js — русскоговорящее сообщество

2020 September 17

М

Максим in Node.js — русскоговорящее сообщество
Алексей Попов
Да. А почему ты отвечаешь несвязанным вопросом на мой вопрос?
все запросы идут через мастер процесс?
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Алексей Попов
Да. А почему ты отвечаешь несвязанным вопросом на мой вопрос?
Вся эта дискуссия смахивает на одно из двух:
- очередной хабраблогер ищет "авторитетное мнение сообщества", чтобы охаять ноду
- есть некий сервис с недодуманной/ошибочной архитектурой и вместо его исправления/усиления нужна причина для переделки на что-то "типа крутое" вроде жавы или плюсов
Факт привязки к местности начисто отвергается
источник

АП

Алексей Попов... in Node.js — русскоговорящее сообщество
Максим
все запросы идут через мастер процесс?
Пока не приходилось использовать кластер
Хотя была такая архитектура, где основной процесс на ноде часть запросов проксировал в дочерние процессы, а ответы от дочерних - клиенту
источник

М

Максим in Node.js — русскоговорящее сообщество
Максим
https://t.me/nodejs_ru/544458
Ещё раз переспрошу.
Ребята, правильно ли я понимаю что к примеру нагрузку 100к рпс нода не держит и форкать кластером бесполезно?
Сколько максимум нода держит рпс?

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

М

Максим in Node.js — русскоговорящее сообщество
Artem Zuev
Вся эта дискуссия смахивает на одно из двух:
- очередной хабраблогер ищет "авторитетное мнение сообщества", чтобы охаять ноду
- есть некий сервис с недодуманной/ошибочной архитектурой и вместо его исправления/усиления нужна причина для переделки на что-то "типа крутое" вроде жавы или плюсов
Факт привязки к местности начисто отвергается
я больше тебя не спрашиваю не о чем.
будь любезен и не отвечай мне больше. Ты просто хамишь мне без причины. Не надо мне это.
источник

М

Максим in Node.js — русскоговорящее сообщество
Алексей Попов
Пока не приходилось использовать кластер
Хотя была такая архитектура, где основной процесс на ноде часть запросов проксировал в дочерние процессы, а ответы от дочерних - клиенту
то есть у вас апка работает на одном процессе ноды?
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Максим
я больше тебя не спрашиваю не о чем.
будь любезен и не отвечай мне больше. Ты просто хамишь мне без причины. Не надо мне это.
А я с тобой разговариваю? Или не могу выразить свое мнение?
источник

М

Максим in Node.js — русскоговорящее сообщество
Artem Zuev
А я с тобой разговариваю? Или не могу выразить свое мнение?
А про кого ты пишешь вот это?
https://t.me/nodejs_ru/544586
источник

АП

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

В-

Вернер Карл Гейзенбе... in Node.js — русскоговорящее сообщество
Максим
опишу проще. У вас есть один ip на который на порт 80 приходит бесконечное количество запросов от пользователей и всё чаще.
Сервер у вас один. На сервере бесконечное количество ядер и памяти. И вам нужно используя только ноджс обслужить как можно больше запросов.
1 - Какаие ваши действия?
2 - Сколько рпс по вашему обработает ваш сервер?
Я далеко не специалист, но помоему нода никаких ограничений не накладывает, какое железо, среда, такие и возможности)
источник

М

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

А этот апи гэтвей с какой нагрузкой работает? рпс?
источник

М

Максим in Node.js — русскоговорящее сообщество
Вернер Карл Гейзенберг - Агент Госдепа
Я далеко не специалист, но помоему нода никаких ограничений не накладывает, какое железо, среда, такие и возможности)
то есть нода бесконечно быстрая и обрабатывает бесконечность rps?
источник

М

Максим in Node.js — русскоговорящее сообщество
это риторический вопрос
источник

АП

Алексей Попов... in Node.js — русскоговорящее сообщество
Максим
У вас это там где не приходилось использовать кластер и всё хорошо работает.

А этот апи гэтвей с какой нагрузкой работает? рпс?
Так нигде не приходилось же 🤷‍♂
источник

В-

Вернер Карл Гейзенбе... in Node.js — русскоговорящее сообщество
Максим
то есть нода бесконечно быстрая и обрабатывает бесконечность rps?
Нет, но ты ведь и не сравниваешь её с другими языками, так-то она же ограничений не ставит, да и железо ты указал с бесконечными ресурсами, поэтому ответ бесконечные rps)
источник

М

Максим in Node.js — русскоговорящее сообщество
Алексей Попов
Так нигде не приходилось же 🤷‍♂
то есть везде где используете ноду, у вас работает один процес ноды на сервере и справляется сам в качестве фронта для бэков? Какие максимальные нагрузки ты видел на своих проектах. Речь до сих пор про ноду. Нагрузки на др платформах не интересуют
источник

В-

Вернер Карл Гейзенбе... in Node.js — русскоговорящее сообщество
Максим
то есть везде где используете ноду, у вас работает один процес ноды на сервере и справляется сам в качестве фронта для бэков? Какие максимальные нагрузки ты видел на своих проектах. Речь до сих пор про ноду. Нагрузки на др платформах не интересуют
Ты пока тут спрашиваешь уже давно сам бы протестировал)
источник

АП

Алексей Попов... in Node.js — русскоговорящее сообщество
Максим
то есть везде где используете ноду, у вас работает один процес ноды на сервере и справляется сам в качестве фронта для бэков? Какие максимальные нагрузки ты видел на своих проектах. Речь до сих пор про ноду. Нагрузки на др платформах не интересуют
Да. Не могу ответить, т.к. почти все проекты были on-premises. Могу предположить, что до нагрузки в 500к в секунду не доходило
источник

М

Максим in Node.js — русскоговорящее сообщество
Вернер Карл Гейзенберг - Агент Госдепа
Ты пока тут спрашиваешь уже давно сам бы протестировал)
я автокэноном пострелял хэлоуворлд на экпресс. Но что-то не особо понял как я своим пк могу сделать 100к рпс к примеру.
источник

М

Максим in Node.js — русскоговорящее сообщество
Алексей Попов
Да. Не могу ответить, т.к. почти все проекты были on-premises. Могу предположить, что до нагрузки в 500к в секунду не доходило
я вот такую статью встретил сегодня
https://habr.com/ru/company/ruvds/blog/439976/

и озадачился. Смысл так такой что на ноде 50к рпс это потолок.
источник