Size: a a a

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

2021 February 24

GK

Geo Kot in Node.js — русскоговорящее сообщество
посоветуйте пожалуйста какой-то аналог xdebug для express. Чтобы можно было пошагово выполнять код
источник

ДВ

Дмитрий Василевский... in Node.js — русскоговорящее сообщество
Sergii
Всем привет. Какая библиотека поможет решить такую задачу?
- Приходит запрос на формирование отчета. Клиенту сразу нужно отдать 200 и запомнить параметры, которые он прислал (сервер может перезагрузиться, так что это будет в БД. Сейчас в проекте в сервисах везде постгрес, поэтому ему приоритет.)
- далее эти параметры нужно взять и запустить долгосрочную задачу (например несколько минут). Если задача зафейлилась, то нужно поставить ей статус об этом. Если сервак потух когда задача выполнялась, то при повторном запуске нужно выполнять ее заново.
- задач может быть несколько, нужно выполнять их по очереди

Я так понимаю, мне нужен фоновый поток, который будет подниматься при старте сервера и смотреть на наличие задач в БД. Дальше будет выполнять их по очереди. В реквестах будут приходить еще задачи.

Мне достаточно будет понимать как этот фоновый поток  запустить, как это сделать на ноде? Я если что Шарпист, с нодой пока на ВЫ.
https://github.com/OptimalBits/bull . Очередь для выполнения заданий
источник

S

Sergii in Node.js — русскоговорящее сообщество
Она на редисе. Мне не хочется еще какую-то БД подключать для маленькой очереди. Если я по крону буду просыпаться каждую минуту, то через static переменную класса могу отметку ставить, что уже работа выполняется и чтобы из другого крона я видел это состояние?
источник

ДВ

Дмитрий Василевский... in Node.js — русскоговорящее сообщество
Sergii
Она на редисе. Мне не хочется еще какую-то БД подключать для маленькой очереди. Если я по крону буду просыпаться каждую минуту, то через static переменную класса могу отметку ставить, что уже работа выполняется и чтобы из другого крона я видел это состояние?
В смысле как пример есть много других очередей и без редиса, но я только этой пользовался, поэтому названия не на слуху
источник

S

Sergii in Node.js — русскоговорящее сообщество
Дмитрий Василевский
В смысле как пример есть много других очередей и без редиса, но я только этой пользовался, поэтому названия не на слуху
Понял, спасибо
источник

ДВ

Дмитрий Василевский... in Node.js — русскоговорящее сообщество
Sergii
Понял, спасибо
А вот ещё достаточно известная https://github.com/bee-queue/bee-queue прям по описания самое оно
источник

ДВ

Дмитрий Василевский... in Node.js — русскоговорящее сообщество
Sergii
Понял, спасибо
Просто мне кажется, редис использовать очень удобно. В нем то как раз и будут сохраняться недоаыполненные задания при рестарте сервера. И автоматически будут пытаться выполнится повторно в подобной ситуации
источник

S

Sergii in Node.js — русскоговорящее сообщество
Дмитрий Василевский
Просто мне кажется, редис использовать очень удобно. В нем то как раз и будут сохраняться недоаыполненные задания при рестарте сервера. И автоматически будут пытаться выполнится повторно в подобной ситуации
У нас уже есть постгрес, поэтому буду писать в нее. Она тоже удобная и уже есть.
источник

S

Sergii in Node.js — русскоговорящее сообщество
+ не хочу надеяться на библиотеку, которой не пользовался
источник

S

Sergii in Node.js — русскоговорящее сообщество
мне наверное одного фонового потока хватит
источник

KP

Klim Pal in Node.js — русскоговорящее сообщество
Space Boost
надо чтобы было удобно читать ну и шобы перфоманс, ну самое главное чтобы писать удобно было по всем паттернам тыры пыры
npm i -g  pino-pretty
tail -f logfile | pino-pretty
источник

ЕГ

Евгений Ганьшин... in Node.js — русскоговорящее сообщество
Всем привет. Господа, не могу нагуглить никак, какой срок действия ключа у редиса на команде set?
источник

ЕГ

Евгений Ганьшин... in Node.js — русскоговорящее сообщество
Или по дефолту это время бесконечное?
источник

y

ymdev in Node.js — русскоговорящее сообщество
Евгений Ганьшин
Или по дефолту это время бесконечное?
да
источник

ЕГ

Евгений Ганьшин... in Node.js — русскоговорящее сообщество
Спасибо!
источник

B

Bat in Node.js — русскоговорящее сообщество
Всем привет, мне надо протестить вебсокеты на медленном соединение, когда в хроме или мозилле эмулирую медленное соединение - это работает только на обычные запросы, на вебсокеты это не работает. Кто знает как замедлить?
источник

ЕГ

Евгений Ганьшин... in Node.js — русскоговорящее сообщество
впн с сша
источник

SB

Space Boost in Node.js — русскоговорящее сообщество
Nikita
А надо в stdout
https://blog.logrocket.com/node-js-logging-best-practices/
тут вот пишут что не надо
источник

SB

Space Boost in Node.js — русскоговорящее сообщество
тут они юзают либу типа шобы быстрее было
источник

y

ymdev in Node.js — русскоговорящее сообщество
Евгений Ганьшин
Всем привет. Господа, не могу нагуглить никак, какой срок действия ключа у редиса на команде set?
О том, что все ключи создаются без привязки ко времени по-умолчанию, написано тут https://redis.io/commands/expire#keys-with-an-expire
А также ты можешь сам проверить это
SET mykey "value"
TTL mykey
если нет времени, то -1 вернет,
если нет ключа, то -2,
ну а если есть что-то больше нуля, то есть остаточное время
источник