A case study describing how I built a web app following a Command Query Responsibility Segregation and event sourcing (CQRS/ES) pattern. In Elixir using the Phoenix Framework.
It uses two open-source Elixir libraries I've authored to provide the building blocks for such applications:
* EventStore: A CQRS event store that uses PostgreSQL (v9.5 or later) as the underlying storage engine. [1]
* Commanded: Provides support for command registration and dispatch; hosting and delegation to aggregate roots; event handling; and long running process managers. [2]
It's an unorthodox approach to building Phoenix web apps. The article details why you might consider applying it.
1 comment
[ 2.1 ms ] story [ 11.9 ms ] threadIt uses two open-source Elixir libraries I've authored to provide the building blocks for such applications:
* EventStore: A CQRS event store that uses PostgreSQL (v9.5 or later) as the underlying storage engine. [1]
* Commanded: Provides support for command registration and dispatch; hosting and delegation to aggregate roots; event handling; and long running process managers. [2]
It's an unorthodox approach to building Phoenix web apps. The article details why you might consider applying it.
[1] https://github.com/slashdotdash/eventstore
[2] https://github.com/slashdotdash/commanded