Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 January 22

M

Miseo in NodeUA - JavaScript and Node.js in Ukraine
Dmytro Drachov
твоя первая проблема это здоровенький обьект который json и тебе его надо распарсить и проверить валидность.
А что может быть производительнее? Буфер? Передавать из одного процесса в другой процесс не JSON?
источник

IJ

Islom Jumaniyozov in NodeUA - JavaScript and Node.js in Ukraine
Javascript не предназначен для интенсивных для ЦПУ задач
источник

M

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

IJ

Islom Jumaniyozov in NodeUA - JavaScript and Node.js in Ukraine
Miseo
А что может быть производительнее? Буфер? Передавать из одного процесса в другой процесс не JSON?
по моему для таких задач используют стримы или пайплайны, к сожелению у меня нету с ними опыта
источник

E

Eugene in NodeUA - JavaScript and Node.js in Ukraine
Miseo
О. Вот это уже интереснее. Допустим у меня раз в 250 мсек прилетает объект. Здоровый. И мне его надо быренько перебрать. Сгруппировать, потом посчитать суммы, поделить, короче ряд вычислений по параметрам и так же быстренько отправить дальше. В таком случае мне почитать про васм или посмотреть как эти расчеты сделать на С++ а потом подключить к ноде?
1. Насколько важно соблюдение порядка в данном пайплайне?
2. Имхо: лучше написать набросок решения на том же языке что и написан проект, а затем уже думать о том как и что можно оптимизировать. Ибо преждевременная оптимизация - зло.
Внезапно может оказаться что переписав часть кода на C++ вы выиграете 10-15 мсек и не более.
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Miseo
О. Вот это уже интереснее. Допустим у меня раз в 250 мсек прилетает объект. Здоровый. И мне его надо быренько перебрать. Сгруппировать, потом посчитать суммы, поделить, короче ряд вычислений по параметрам и так же быстренько отправить дальше. В таком случае мне почитать про васм или посмотреть как эти расчеты сделать на С++ а потом подключить к ноде?
Здоровый это сколько в граммах?
источник

IJ

Islom Jumaniyozov in NodeUA - JavaScript and Node.js in Ukraine
А есть ли в Node библиотека вроде Cython, для буста производительности
источник

M

Miseo in NodeUA - JavaScript and Node.js in Ukraine
Alexander
Здоровый это сколько в граммах?
Кстати, замеры делал. Но забыл. По-моему максимум 400 килобайт, один объект.
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Miseo
Кстати, замеры делал. Но забыл. По-моему максимум 400 килобайт, один объект.
Тогда это точно не здоровый и рейт 1 в 250мс это совсем немного. Тут точно никаких плюсов и прочего не надо.
источник

DD

Dmytro Drachov in NodeUA - JavaScript and Node.js in Ukraine
Miseo
Использую редис (паб/саб) для передачи событий (данных)
меньше обьем событий, расчет в базе. Другой формат данных которые можно читать частями, если конечно у тебя можно делать расчет частями.

Я думаю что для начала надо понять а есть ли у тебя проблема=) и что ухудшает положение, оно ж не всегда так было=)
источник

E

Eugene in NodeUA - JavaScript and Node.js in Ukraine
Alexander
Тогда это точно не здоровый и рейт 1 в 250мс это совсем немного. Тут точно никаких плюсов и прочего не надо.
+1
источник

M

Miseo in NodeUA - JavaScript and Node.js in Ukraine
Да, я как раз сейчас делаю систему логгирования, что бы понять где именно скопление. Данных самое большое и как много времени занимает вычисление. Тем временем как раз размышляю: что если написать это кусок на С++ и передавать туда данные, а оттуда готовый результат.
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Miseo
Да, я как раз сейчас делаю систему логгирования, что бы понять где именно скопление. Данных самое большое и как много времени занимает вычисление. Тем временем как раз размышляю: что если написать это кусок на С++ и передавать туда данные, а оттуда готовый результат.
Написание куска на плюсах разве что принесет пользу с академической точки зрения. На ноде спокойно можно обрабатывать гигабайты данных с преобразованиями, вычислениями и математикой.
источник

E

Eugene in NodeUA - JavaScript and Node.js in Ukraine
Я бы сказал что в плюсы имеет смысл выносить только высокоинтенсивные вычисления вроде обработки аудио/видео потока, изображений, городить opencv и прочие достаточно специфичные вещи, написание которых на JS будет затратно по времени и ресурсам.
Так что 10 раз подумай прежде чем писать нативный аддон к ноде.
источник

M

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

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Islom Jumaniyozov
да я сам не знаю просто интересно каким он будет в продакшне использовании в отличии от Node, Ryan Dahl же сказал 10 вещей о которых он жалеет в Node
Через 10 лет он расскажет еще 10 ошибок проектирования дено, но это уже не будет сильно интересно, потому, что это все топтание на одном месте. Напромер дено якобы более секьюрно работает с зависимостями, без нпм, он их просто по урлам из инета тянет, обалденно надежно и безопасно.
источник

IJ

Islom Jumaniyozov in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
Через 10 лет он расскажет еще 10 ошибок проектирования дено, но это уже не будет сильно интересно, потому, что это все топтание на одном месте. Напромер дено якобы более секьюрно работает с зависимостями, без нпм, он их просто по урлам из инета тянет, обалденно надежно и безопасно.
😂😂 и то правда
источник

A

Andrey in NodeUA - JavaScript and Node.js in Ukraine
Подскажите, для каких задач нода не подойдёт вообще?
источник

M

Miseo in NodeUA - JavaScript and Node.js in Ukraine
хм… я тут книжку одну читаю по ноде и в ней написано:
Кроме того  V8 очень экономно расходует память, очень хорошо оптимизирована в этом плане, позволяет профилировать процессор, память, смотреть, что происходит.

а утечки памяти о которых много кто говорит, откуда растут?
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Andrey
Подскажите, для каких задач нода не подойдёт вообще?
Для систем реального времени, но для них не подойдет и C# и Java и все, что со сборщиком мусора, хотя в ноде есть возможность его отключать и собирать мусор по ручному вызову, но это костыль.
источник