об изменении сущности в базе(коммита) с помощью алхимии.
Мне надо привязаться к событию свершения коммита в опредленной сущности. Как это сделать?
Работаю с Фласк на "особенной" архитектуре...
Снова ивенты, зачем?
в плане, снова? у нас БД просто генерится налету и поддерживается сторонней командой... и мне надо как то подписаться на изменения ТОЛЬКО после коммита в сущености, чтоб выполнить логику. А у них сигнал испускается ещё на флаше... но с этим мы ничего не сможем сделать, увы. Поэтому придётся как то выкручиваться
Если в рамках БД это решать, по идее нужны нотификации (NOTIFY), вроде будут публиковаться именно при коммите, но не будут никуда сохраняться. Можно использовать брокер сообщений, тогда публиковать событие будет приложение и будет возможность асинхронной обработки события изменения сущности. Можно реализовать паттерн outbox, тогда в таблицу БД будут сохраняться эвенты об изменении и в той же транзакции коммититься, после чего их будет обрабатывать читатель и возможно публиковать в тот же брокер сообщений
брокер не вариант просто у нас ядро испускает сигнал не в тот момент, и я получается на микросервис отпрвляю сразу id cущности, а получается так, что из за того, что сигнал приходит на функцию, которая пишет в редис до 100% коммита, то в микросервисе собираются старые, необновлённые поля.. асинхронную задержку поставил, но это дичь и нельзя так делать
Можно же отправлять уведомление после коммита
Обсуждают сегодня