Комментарии 13
А как решается проблема с состоянием гонки, конкурентными запросами на снятие/пополнение и прочим?
+3
В случае данной реализации, когда мы на HTTP запросы синхронно выполняем эти операции, — никак. И когда время расчета текущего состояния по событиям в агрегате будет ощутимым — могут начаться проблемы. Очередь для команд в агрегаты — решит проблему. Не пойму почему создатели примера использования этой библиотеки не учли это.
+1
> eventual consistency;
> банк
Вы уверены что подобрали нужный инструмент?
> банк
Вы уверены что подобрали нужный инструмент?
0
Пример из статьи носит исключительно ознакомительный характер, чтобы описать быструю пробу концепции в экосистеме Laravel. Данная реализация, по моему мнению, достаточна наглядна. Что касается CQRS/ES для операций с деньгами, то она вполне оправдана в случаях, когда функциональные требования не будут нарушены особенностями реализации. С eventual consistency можно жить, если клиентам не придется мучительно долго ждать обновления проекций. Надеюсь правильно понял Ваш вопрос.
Интересная статья на эту тему от команды, которая на Elixir разрабатывает банкинг
+1
Отставание будет только в проекциях, что вполне допустимо.
Агрегаты же обеспечивают достаточную consistency, чтобы нельзя было снять со счета, если там не хватает денег — там всё четко
Агрегаты же обеспечивают достаточную consistency, чтобы нельзя было снять со счета, если там не хватает денег — там всё четко
+1
А что вы бы выбрали?
0
Банк лучше сразу писать на WordPress — там всё есть из коробки для этого.
-4
Когда сказать нечего на хабре — минусуют, классика
-4
Можно конечно и на Wp. Мы к примеру в 2008 на Yii писали банковскую CRM для кассы и финансов в целом. (горький но полезный опыт)
Но тут Банк представлен как пример а не как призыв к действию.
Но тут Банк представлен как пример а не как призыв к действию.
0
В WP из коробки 40 разных API, его давно используют не как CMS для бложиков, а делают большие сложные проекты с REST API, бэкенд для мобильных приложений, бэкенд для сервисов на node.js.
Так что и банковские заморочки на нём можно реализовать.
Так что и банковские заморочки на нём можно реализовать.
-1
Да, делают.
Блаженные в мире всегда были и будут.
Взять наиболее корявый продукт и сделать на нем проект, это шикарный ход.
Правильно, зачем нам брать Symfony/LAravel etc., продумывать архитектуру DDD или реализацию микросервисов на Golang / NodeJs etc…
Покажите нам проект API на WP, хотя бы с 100 RPS. Где эндпоинт на WP.
Блаженные в мире всегда были и будут.
Взять наиболее корявый продукт и сделать на нем проект, это шикарный ход.
Правильно, зачем нам брать Symfony/LAravel etc., продумывать архитектуру DDD или реализацию микросервисов на Golang / NodeJs etc…
Покажите нам проект API на WP, хотя бы с 100 RPS. Где эндпоинт на WP.
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как быстро попробовать CQRS/ES в Laravel или пишем банк на PHP