Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 February 16

OJ

Oleg Junior in NodeUA - JavaScript and Node.js in Ukraine
Добрый день! Есть ли разница в алгоритмической сложности при объединении спредом массивов и объектов?
Например:
const arr1 = ['E_01','Jack',32]
const arr2 = ['Software Dev','Paris']
const mergedArr = [...arr1,...arr2]
// здесь вроде O(n) в нашем случае 5 итераций
const emp = {
'id': 'E_01',
'name': 'Jack',
'age': 32,
'addr': 'India'
};

const job = {
'title': 'Software Dev',
 'location': 'Paris'
};
const mergedObjects = {...emp, ...job};
// ???
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
про libuv
По дефолту 4, максимум 1024.
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Alexander
По дефолту 4, максимум 1024.
Получается,если забить 4 потока сложными операциями,то у меня приложение встанет
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Сложный запрос(по времени) в бд лучше дробить или поднимать еще один процесс?
источник

Y

Yaroslav in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
Сложный запрос(по времени) в бд лучше дробить или поднимать еще один процесс?
Вам бы почитать про асинхронность для начала..
источник

Y

Yaroslav in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
Сложный запрос(по времени) в бд лучше дробить или поднимать еще один процесс?
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Спасибо,я  уже видел этот отрезок
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Меня интересует,что будет с приложением если 4 потока встанут
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
От синхронных операций
источник

Y

Yaroslav in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
От синхронных операций
запрос в бд не должен быть синхронным, они встанут только на математике или работе с fs
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Я про то,как это работает в libuv
источник

Y

Yaroslav in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
Я про то,как это работает в libuv
смотрите видео выше еще раз, только вместо webapi api написано для ноды
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
Получается,если забить 4 потока сложными операциями,то у меня приложение встанет
Можно их забить достаточно простыми. Например dns lookup-ами.
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Благодарю,Вы видимо не поняли о чем я,я про то,что в линуксе все операции блокирующие и libuv поднимает потоки
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Я Ярослвау
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
Сложный запрос(по времени) в бд лучше дробить или поднимать еще один процесс?
Сложный запрос в бд не кушает целый тред всё время. Он кушает его только во время отправки запроса по ТСР или еще какому-то протоколу в БД и при получении ответа.
источник

Y

Yaroslav in NodeUA - JavaScript and Node.js in Ukraine
Dima Demokritov
Благодарю,Вы видимо не поняли о чем я,я про то,что в линуксе все операции блокирующие и libuv поднимает потоки
от обратного давайте, с какого языка вы пришли, сдается мне что с пхп
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Нет,я еще учусь,писал на стандартном си,асм и котлине не много
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Но на практике наиболее часто в это количество потоков упирается как раз dns-lookup. Можно поставить популярный и кривой пакет из нпм под названием "request" и прощупать проблему на своей шкуре.

Вот тут подробнее можно почитать что будет кушать либювшные треды
https://nodejs.org/api/cli.html#cli_uv_threadpool_size_size
источник

DD

Dima Demokritov in NodeUA - JavaScript and Node.js in Ukraine
Спасибо
источник