Enode Frame composition
What is Enode
Enode is a. NET platform, developed in pure C #, based on the Ddd,cqrs,es,eda,in-memory architecture style, which helps developers develop an application development framework for high-concurrency, high-throughput, scalable, scalable applications.
- Open Source project Address: Https://github.com/tangxuehua/enode
- Author Blog address: http://www.cnblogs.com/netfocus/category/496012.html
- QQ Exchange Group No.: 185916873
- Public Number: Enode
Enode Frame Features
- A DDD development framework that perfectly supports the development of hexagon-based architecture ideas
- Implement the CQRS architecture idea, and the framework provides the return of the result of the C-side command processing, supporting synchronous return and asynchronous return
- Built-in Event Sourcing (ES) schema mode for data persistence at C-end becomes generalized
- Aggregate root resident memory, In-memory domain model
- The processing of the aggregation root is based on command Mailbox, the idea of Event Mailbox, similar to actor Model, actor Mailbox
- Strictly abide by the principle of cohesion consistency and final consistency in aggregation
- Group Commit Domain Event
- Optimistic concurrency control of aggregation root based on unique index of aggregation root id+ event version number
- The idempotent processing of the frame guarantee command
- Route commands or events by aggregating root IDs for minimal concurrency conflicts and maximum parallel processing
- Message sending and receiving based on distributed Message Queuing Equeue, supports distributed deployment
- Event-Driven architecture paradigm (Eda,event-driven Architecture)
- Dynamic expansion/contraction based on the queue
- Eventdb is easy to scale because it holds immutable events, and the framework can be built to support
- Support for Process Manager (Saga) to support a user action business scenario across multiple aggregate roots, such as order processing, thus avoiding the use of distributed transactions
- Enode implements most of the technical issues facing the CQRS architecture, allowing developers to focus on the development of business logic and business processes without having to worry about purely technical issues
Enode 2.8 Introduction to the latest architecture diagram