Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2022 January 28

A

Alexandr in NodeUA - JavaScript and Node.js in Ukraine
А на вашем ютуб канале есть что то про ваш NodejsStarterKit?
источник

MS

Max Shane in NodeUA - JavaScript and Node.js in Ukraine
Кто-нить знает, kittenx, ВКшный прокси-сервер, является переделанным nginx-ом?
источник

EK

Evgen K in NodeUA - JavaScript and Node.js in Ukraine
конечно правильно
источник

r

rvv880 in NodeUA - JavaScript and Node.js in Ukraine
У тебя есть канал?
источник

СП

Сергей Пограничный... in NodeUA - JavaScript and Node.js in Ukraine
Переслано от Сергей Пограничный...
Господа, вопрос по worker threads и EventEmitter, простая задачка:
https://github.com/sergeyampo/NodeJS-Prime-Factorization-WorkerThreads/blob/master/concurrent.mjs#L36
считаем в воркере функцией множество простых чисел, при нагрузочных тестах нода ругается, как еще сделать, чтобы не загружать листенерами воркера?
MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 message listeners added to [Worker]. Use emitter.setMaxListeners() to increase limit
источник

R

Roman in NodeUA - JavaScript and Node.js in Ukraine
Не подписывайтесь на события внутри http обработчиков или циклов. Делайте подписку и обработку событий вне итерации, а внутри - только отравляйте в воркер входные данные для обработки
источник

СП

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

СП

Сергей Пограничный... in NodeUA - JavaScript and Node.js in Ukraine
Если покажите минимальнейший пример - буду благодарен
источник

N

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

R

Roman in NodeUA - JavaScript and Node.js in Ukraine
Сделайте учёт клиентов через Map, тогда сможете доставать их в обработчике по идентификатору
источник

TS

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

A

Alexandr in NodeUA - JavaScript and Node.js in Ukraine
Благодарю
источник

EK

Evgen K in NodeUA - JavaScript and Node.js in Ukraine
На самом деле аргумент действительно так себе. Не можешь критиковать атомобили, потому сам не строишь и тд. Но можно и в своё русло выкрутить это - возвращается клиет недовольный с ворохом багов, а ты ему "А ты хоть сам программист?"
источник

СП

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

N

Nikita in NodeUA - JavaScript and Node.js in Ukraine
Я выразил свое мнение о том что лично мне хотелось бы контент по этой теме немного в другом формате.

в чем проблема?
источник

EK

Evgen K in NodeUA - JavaScript and Node.js in Ukraine
та ни в чем :) Я поддерживаю Ваше права на своё мнение. Даже пытался поддержать, но видимо неуклюже)
источник

СП

Сергей Пограничный... in NodeUA - JavaScript and Node.js in Ukraine
Я бы понял, если бы мы хранили какой-то SharedWeakMap<req, value> все воркеры разбирали бы себе задачи из него конкуррентно и отвечали сразу на запрос, что думаете?
источник

R

Roman in NodeUA - JavaScript and Node.js in Ukraine
const clients = new Map();

worker.on('message', ({ id, result }) => {

  const client = clients.get(id);

  client.end(result);

  clients.delete(id);

});

const server = http.createServer(async (req, res) => {

  const id = 'some client id';

  worker.postMessage({ id, data: [1, 2, 3] });

  clients.set(id, res);

});

server.listen(3000);
источник

R

Roman in NodeUA - JavaScript and Node.js in Ukraine
примитивно вот так
источник

СП

Сергей Пограничный... in NodeUA - JavaScript and Node.js in Ukraine
Вообще у меня другой файл для воркера, как он узнает о Map?
источник