Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 October 03

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
А по факту как теперь я вижу, это просто отложенный по времени вызов и все
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
Короче иными словами, я думал что сеттаймаут в 4 секунды тоже самое что 4 секунды сортирвки массива
источник

UT

User True in NodeUA - JavaScript and Node.js in Ukraine
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
Если вызвать сеттаймаут с 5 сек задержкой, и затем сеттаймаут с 2 сек задержкой, то второй сеттаймаут первым выведет консол лог например. Я думал что тоже самое будет и с сортировками массива если из написать на промисах или на асинк эвейтах. Но нифига не вышло - отраьатывают последовательно. ))
источник

S

Serhii in NodeUA - JavaScript and Node.js in Ukraine
Чуть позже отпишу, если другие не помогут. Но ты не то ожидаешь, что нужно
источник

VK

Vladymyr Krasulya in NodeUA - JavaScript and Node.js in Ukraine
ты можешь добиться вытесняющей многопоточности если в цикле на каждой итерации будешь отдавать управление петле с помощь await setTimeout(0)
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
вот вот, я с того и начал,что заподозрил, что мое понимание не совпадает с тем как работает нода и те же примеры Тимура
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
Всем спасибо)
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
+ спс, попробую
источник

UT

User True in NodeUA - JavaScript and Node.js in Ukraine
Только имей ввиду, это не сделает твои вычисления более быстрыми, а только даст возможность сделать тик в цикле событий и выполнить какие-то другие, отложенные задачи

Кроме как через threads больше нет способов делать вычисления параллельно
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
А позвольте тогда еще вопрос) Желание таким образом разбить исполнение у меня появилось исходя из задачи: обрабатывать http запросы клиентов исполнение которых по длительности может сильно отличаться хочется более менее справедливо, чтобы клиенты не ждали в очереди пока сервер обработает какой то пул долгих запросов. Как такие задачи принято решать? Как я понимаю тут без многопоточности не обойтись? Балансировать запросы на разные потоки или машины в зависимости от прогнозируемого времени исполнения? Так это делается в основном?
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
Типо архитектор заранее прогонозирует какая будет нагрузка, какие запросы (по времени исполнения и потребелнию ресурсов) могут быть и в зависимости от этого раскидыает их обработку на N потоков/процессов? Может и в одном потоке все отработает, если все запросы одинаково быстро должны исполняться, так?
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
А почему исполнение запросов отличается по длительности? И на что уходит время в самых долгих запросах?
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
Не имеет значения, все эти вопросы у меня появляются в рамках учебного пет проекта)
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
Мне может это и не нужно сейчас, но вопрос появился и я попробовал так сделать
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Имеет
Одно дело если запросы долгие потому что в базу ходить надо, и другое если они долгие потому что для каждого надо что-то посчитать (занять процессор)
источник

UT

User True in NodeUA - JavaScript and Node.js in Ukraine
Все ваши вопросы сводятся к тому как работает цикл событий в nodejs ) Просто разберитесь в этом
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
тогда пока без базы) процессорное время просто
источник

АП

Алексей Попов... in NodeUA - JavaScript and Node.js in Ukraine
Тогда смени ноду на что-то более подходящее, на го, или Шарп/жаву, или ещё что-то
источник

UT

User True in NodeUA - JavaScript and Node.js in Ukraine
Создавать пул тредов можно, и делегировать вычисления свободной
источник