14289
Уютный чат для профессионалов, занимающихся поиском питоньих мудростей. Как не получить бан: https://t.me/ru_python/1961404
Я понимаю, что если мы начисляем деньги, они сначала висят в pending, а потом только начисляются, а если снимаем - наоборот, сначала снимаем и оставляем с pending. Вопрос, а что делать если там не количественные изменения. Например, изменение роли юзера или хуже - изменение какой-то сложной сущности
Читать полностью…
если у тебя не поддерживается эвентсорсинг, то будет блокировка
Читать полностью…
Фишка в том что у тебя это просто строка в бд, и ты показываешь пользователю что с твоим переводом всё норм, он просто в процессе перевода
Читать полностью…
Обычно это всё-таки класическая блокировка на уровне транзакций бд
Читать полностью…
еще 2pc и 3pc очень медленные, мы блокируем всё до тех пор пока транзакция не завершиться
Читать полностью…
в чистом виде 3pc, сейчас не используется. У неё есть один недостаток очень жирный
Будет проблема если половина сервисов успеют получить precommit и другая половина не успеет
service1.precommit()
service2.precommit()
# fail
service3.precommit()
Вместо неё используется более хитрые протоколы, где ноды обмениваются между собой данными при падении оркестратора.
смысл в любом случае не в переживании падения, а в том, чтобы падение чего либо не нарушило целостность действия
Читать полностью…
Да, там нужно подстраивать бд-шку под сагу. Её просто так не встроить поверх системы
Читать полностью…
Сейчас накидаю скриншотов как я это делал. У меня естественно там нет никаких эвентсоурсингов
Читать полностью…
ну тут как организуешь если мы на прикладном уровне транзакции делаем
Читать полностью…
думаю мне нунжы умные слова, если я буду презентацию по текущему проекту делать
Читать полностью…
Честно говоря я не из книжек эту инфу добывал, по этому к сожалению нет
Читать полностью…
Т.е всё сломается если 200 от другой системы пришло, но закомитить не получилось если например база прилегла
Читать полностью…
На картинке видимо перевод денег между двумя "банками". По этому скорее всего это разные сервисы
Читать полностью…
оркестратор с сагой уже могут и дождаться, но это зависит от кейса сильно
Читать полностью…