Size: a a a

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

2020 September 17

R

Riclud in Node.js — русскоговорящее сообщество
Gleb ~
Учитывая что одно ядро обычно выделяется под балансер то не очень, но зато worker thread отлично зайдет. На двух ядрах мне кажется должна быть архитектура где основной процесс обслуживает эвентлуп в основном потоке, а все вычисления, логирование, и прочее выносится в тред
А где можно посмотреть/почитать про worker thread, желательно на русском и BxJS для этого написана ?
источник

а

артем новиков... in Node.js — русскоговорящее сообщество
Riclud
А где можно посмотреть/почитать про worker thread, желательно на русском и BxJS для этого написана ?
Нечерта там сам не разберешься
источник

а

артем новиков... in Node.js — русскоговорящее сообщество
Толку читать не много
источник

G~

Gleb ~ in Node.js — русскоговорящее сообщество
Riclud
А где можно посмотреть/почитать про worker thread, желательно на русском и BxJS для этого написана ?
В чем идея и как работает:  https://m.habr.com/ru/company/ruvds/blog/437984/
источник

R

Riclud in Node.js — русскоговорящее сообщество
Спасибо
источник

G~

Gleb ~ in Node.js — русскоговорящее сообщество
Но если просто клонировать то конечно сделать проще и прирост будет и больше 20% точно. Но если говорить о максимальной производительности то архитектура на worker_rhreads должна дать мексимальный прирост от второго ядра
источник

G~

Gleb ~ in Node.js — русскоговорящее сообщество
источник

R

Riclud in Node.js — русскоговорящее сообщество
Насколько я понял когда используешь асинхронность , node js сам там в ос все выкинет и os сама решит как лучше и быстрее все это выполнить, тогда зачем это все нужно если достаточно использовать асинхронность где надо ?
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
Gleb ~
Но если просто клонировать то конечно сделать проще и прирост будет и больше 20% точно. Но если говорить о максимальной производительности то архитектура на worker_rhreads должна дать мексимальный прирост от второго ядра
только в определённых условиях
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
Riclud
Насколько я понял когда используешь асинхронность , node js сам там в ос все выкинет и os сама решит как лучше и быстрее все это выполнить, тогда зачем это все нужно если достаточно использовать асинхронность где надо ?
нода однопоточная, кластеризация позволяет создавать много потоков и балансировать работу между потоками
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
в двух словах worker threads нужен ТОЛЬКО для вычислений, во всех остальных случаях он не даст большей пользы, чем кластер
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
для сетевой работы, как веб сервер наоборот рекомендуется кластер
источник

G~

Gleb ~ in Node.js — русскоговорящее сообщество
Riclud
Насколько я понял когда используешь асинхронность , node js сам там в ос все выкинет и os сама решит как лучше и быстрее все это выполнить, тогда зачем это все нужно если достаточно использовать асинхронность где надо ?
Дело в том что иногда тебе нужно повесили обработку данных, а не только запросить и получить... Например надо расшифровать или отсортировать или преобразовать, о общем обработать ответ от внешнего источника. И пока обрабатывать ты его будешь у тебя не будет никакой асинхронности и ты займешь основной поток, веть нода однопоточная. Для того чтобы так не происходило и нужен worker thread, в который может передать задачу и потом получить ответ
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
Gleb ~
Дело в том что иногда тебе нужно повесили обработку данных, а не только запросить и получить... Например надо расшифровать или отсортировать или преобразовать, о общем обработать ответ от внешнего источника. И пока обрабатывать ты его будешь у тебя не будет никакой асинхронности и ты займешь основной поток, веть нода однопоточная. Для того чтобы так не происходило и нужен worker thread, в который может передать задачу и потом получить ответ
+1, раньше вместо воркеров использовался дочерний процесс, воркеры по сути это и треды/нити от родительского процесса, более родная для ОС операция
источник

G~

Gleb ~ in Node.js — русскоговорящее сообщество
ℝuƷ1Ʒʒ7
для сетевой работы, как веб сервер наоборот рекомендуется кластер
Да это простое и надежде решение, но погляди видосик девшахты, там интересно. Он берет основной поток как сервер, а все запросы обрабатывает в воркерах, получилось интересно.
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
Gleb ~
Да это простое и надежде решение, но погляди видосик девшахты, там интересно. Он берет основной поток как сервер, а все запросы обрабатывает в воркерах, получилось интересно.
но практической пользы от этого нет :)
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
только лишние заморочки с IPC на своей стороне
источник

G~

Gleb ~ in Node.js — русскоговорящее сообщество
ℝuƷ1Ʒʒ7
но практической пользы от этого нет :)
Почему нет, если тест devchaht показал приличный прирост 😊
источник

ℝuƷ1Ʒʒ7 in Node.js — русскоговорящее сообщество
Gleb ~
Почему нет, если тест devchaht показал приличный прирост 😊
в сравнении с кластеризацией?
источник

G~

Gleb ~ in Node.js — русскоговорящее сообщество
Да
источник