lxfr
@lxfr

Каким образом в NodeJS я могу понять — что таблица изменилась (и уведомить клиента далее)?

Т.е. про само соединение клиент/сервер, я понимаю, как это делается, и как мне отправлять запросы.
Но как на сервере запустить функцию которая будет определять, что таблица изменилась, и сразу слать инфу клиенту? Т.е. как мне отследить сам факт изменения таблицы.

P.S.: хочу способ без использования таймеров и чтения/сравнения со старыми данными по таймеру, у меня приходит на ум единственный способ - это отслеживания всех INSERT/UPDATE/DELETE (и далее уже после них сразу слать инфу, что таблица изменилась), но а если я вручную данные поменяю в SQL редакторе это уже не сработает :)
  • Вопрос задан
  • 194 просмотра
Решения вопроса 1
eastywest
@eastywest
Backend developer
Используйте RethinkDB, она создавалась как раз для этих целей.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@vshvydky
у вас же модификациями бд заведует только нода? если да, то в код, где вы это делаете закиньте отправку события добавляете отправку события myemitter('emit'..... и вешаете myemitter.on('emit'... обработка события.
Доки для почитать тут
Ответ написан
В идеале для работы с базой надо создавать отдельный класс, в котором на соответствующих методах можно вызывать все что угодно.
Ответ написан
bingo347
@bingo347 Куратор тега Node.js
Ткнуть в доку лучше готового к копипасте ответа
Как уже подсказали выше, rethinkDB - идеальный вариант
Но если принципиальны реляционки, то пишем триггеры на нужные таблицы, которые складывают отдельно нужные изменения, а скрипт периодически их чекает
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы