ACID vs BASE
Вчера в NarisApp разбирали разницу между ACID и BASE транзакциями, что я понял по результату:
💡 часто люди переживают о согласованности данных для которых не требуется строгой согласованности. Нужно учиться разделять ситуацию, когда между данными есть сильная логическая связь и когда эта связь слабая.
💡 ORM скрывая часть логики работы с СУБД может не помогать, а мешать правильному восприятию запросов. Например, TypeORM реализуя Soft Delete сама подставляет null вместо удаленного пользователя, что логично, но используя мягкое удаление мы рассчитываем всегда получать данные пользователя, просто с пометкой Delete. Отсюда возникает недопонимание и ошибки.
💡привычка работать с ACID вырабатывает страх "несогласованности" с ним бороться сложнее всего. С этим нужно работать.
💡оркестрация и хореаграфия - это не всегда про микросервисы, оркестратор - это любой внешний "управленец", который решает как обрабатывать транзакцию. Причем это может быть - скрипт, человек, обоработчик события и т.д.
Post #2238
11.8K
Forwarded from SOERDEV | развитие инженеров-программистов
- 👍 30
- 🤔 4
- 🤮 2
- 🤪 2
- ❤ 1