Size: a a a

NestJS — русскоязычное сообщество

2020 February 24

MY

Michael Yali in NestJS — русскоязычное сообщество
И очень большой приток людей а нест с фронта. Это отчётливо видно по скачиваниям после очередной ангуляр конфы, на которой выступал Камил и по количеству явно джуновских вопросах в гиттере, дискорде и в телеге в англ группе. Чисто личное наблюдение
источник

EV

Eugene Vinakov in NestJS — русскоязычное сообщество
чето я совсем не понимаю этот bulljs, почему надо обязательно ставить await перед this.myQueue.add, почему я не могу выполнить ее ассинхронно?
await this.myQueue.add('jobName', {
 foo: 'bar',
});
источник

И

Илья | 😶 in NestJS — русскоязычное сообщество
Eugene Vinakov
чето я совсем не понимаю этот bulljs, почему надо обязательно ставить await перед this.myQueue.add, почему я не могу выполнить ее ассинхронно?
await this.myQueue.add('jobName', {
 foo: 'bar',
});
Общение с редисом происходит на асинхронном уровне
источник

S

Sviatoslav in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
Во-первых, индексы для того и есть, чтобы их ставить.
Во-вторых, кэш не решает задачу обработки данных.
В-третьих, кэш вообще решает другую задачу в другом месте.

Ну и я так и не понял, как SQL запросы сложнее select from делают архитектуру плохой.
для небольших проектов никакой, ну а так, слабая связанность сильное сцепление т.д это наше все. От проекта зависит
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Sviatoslav
для небольших проектов никакой, ну а так, слабая связанность сильное сцепление т.д это наше все. От проекта зависит
Т.е. процедурно на js обрабатывать данные лучше, чем делать запрос?
И в чём тут связность?
источник

EV

Eugene Vinakov in NestJS — русскоязычное сообщество
Илья | 😶
Общение с редисом происходит на асинхронном уровне
а что делать если надо чтобы задача выполнилась один раз через час. delay в час, заставит ждать все что после this.myQueue.add тоже час.(
источник

И

Илья | 😶 in NestJS — русскоязычное сообщество
Eugene Vinakov
а что делать если надо чтобы задача выполнилась один раз через час. delay в час, заставит ждать все что после this.myQueue.add тоже час.(
Не заставит
источник

EV

Eugene Vinakov in NestJS — русскоязычное сообщество
у меня зпаставляет
источник

EV

Eugene Vinakov in NestJS — русскоязычное сообщество
doA();
await this.myQueue.add('jobName', {
 foo: 'bar',
}, {delay: 60*60*1000})
doB();
doB() выполнится через час(
источник

S

Sviatoslav in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
Т.е. процедурно на js обрабатывать данные лучше, чем делать запрос?
И в чём тут связность?
Один большой монолит, вот и связанность, захочешь вынести табличку в другую бд а увы, но вообще для того проекта который ты привел, для того примера можно сделать и один запрос, но вот публичным его не сделаешь.
источник

S

Sviatoslav in NestJS — русскоязычное сообщество
сколько там мс на обработку уходит?
источник

LK

L K in NestJS — русскоязычное сообщество
Eugene Vinakov
doA();
await this.myQueue.add('jobName', {
 foo: 'bar',
}, {delay: 60*60*1000})
doB();
doB() выполнится через час(
потому что ты ожидаешь завершение таски, убери await
источник

EV

Eugene Vinakov in NestJS — русскоязычное сообщество
L K
потому что ты ожидаешь завершение таски, убери await
и тогда задача никогда не выполнится(
источник

EV

Eugene Vinakov in NestJS — русскоязычное сообщество
даже если delay убрать, зачада не выполнится никогда, походу она даже в очередь не добавляется
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Sviatoslav
Один большой монолит, вот и связанность, захочешь вынести табличку в другую бд а увы, но вообще для того проекта который ты привел, для того примера можно сделать и один запрос, но вот публичным его не сделаешь.
Проблему выделения таблицы в другую БД будет решать СУБД, а не приложение.

Монолитность тут не в тему вообще. Разные таблицы - это вопрос модели данных, и это никак не связано с архитектурой приложения.
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Sviatoslav
сколько там мс на обработку уходит?
Ты понимаешь, что ты предлагаешь на JS отдавать обработку данных вместо SQL?
Проблема даже не в затраченном времени будет.
источник

S

Sviatoslav in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
Проблему выделения таблицы в другую БД будет решать СУБД, а не приложение.

Монолитность тут не в тему вообще. Разные таблицы - это вопрос модели данных, и это никак не связано с архитектурой приложения.
У тебя просто пример классный) И не обрабатывать, а в худшем случаи принять ид (курсов которые он уже прошел) и передать обратно (найти те которые остались), тем более это будут таблицы связанные друг с другом, а вот сам пользователь тут не причем. Пользователи отдельно, курсы отдельно.
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Sviatoslav
У тебя просто пример классный) И не обрабатывать, а в худшем случаи принять ид (курсов которые он уже прошел) и передать обратно (найти те которые остались), тем более это будут таблицы связанные друг с другом, а вот сам пользователь тут не причем. Пользователи отдельно, курсы отдельно.
Это был упрощённый пример. И это не единственный запрос такой. В этом ещё ничего агрегировать не надо было, просто выборка сложная, без агрегации, ранжирований.

То, что ты предлагаешь, работает только для простого crud api, где надо взять положить сущности, иногда с подсущностями в простом дереве сущностей.

И то, что ты предлагаешь, не только заставляет писать императивно на JS кучу кода обработки кучи данных, с которым куда лучше справится СУБД.
Но и лишаешься того, ради чего мы вообще используем РБД: целостности данных, например.
источник

S

Sviatoslav in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
Это был упрощённый пример. И это не единственный запрос такой. В этом ещё ничего агрегировать не надо было, просто выборка сложная, без агрегации, ранжирований.

То, что ты предлагаешь, работает только для простого crud api, где надо взять положить сущности, иногда с подсущностями в простом дереве сущностей.

И то, что ты предлагаешь, не только заставляет писать императивно на JS кучу кода обработки кучи данных, с которым куда лучше справится СУБД.
Но и лишаешься того, ради чего мы вообще используем РБД: целостности данных, например.
у тебя просто приложения для админки. Если ты это выкотиш в папблик ты поймешь ценность простых запросов)
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Sviatoslav
у тебя просто приложения для админки. Если ты это выкотиш в папблик ты поймешь ценность простых запросов)
Я не знаю, что ты подразумеваешь под админкой
источник