ENode是什么
ENode是一个.NET平台开源的应用开发框架,为开发人员提供了一套完整的基于DDD+CQRS+ES+(in-memory)+EDA架构风格的解决方案。
ENode的特色是什么
- 解决CQRS架构的C端的高并发写的问题,以及CQ两端数据同步的顺序性保证和幂等性问题;
- 将并发写降低到最低,从而做到最大程度的并行、最大的吞吐量;
- 通过基于分布式消息队列横向扩展的方式实现系统的可伸缩性;
- 聚合根常驻内存,可以完全以OO的方式来设计实现聚合根,不必为ORM的阻抗失衡而烦恼;
- 基于EDA的架构,而又自动帮开发人员解决消息的幂等处理和消息不丢的问题;
- 架构层面严格规范了开发人员该如何写代码,和DDD开发紧密结合;
- 实现CQRS架构,支持Command结果的返回;支持C端完成后立即返回Command的结果,也支持CQ两端都完成后才返回Command的结果;
- 先进的Saga机制,以事件驱动的流程管理器(Process Manager)的方式替代分布式事务;
- 基于ES(Event Sourcing)的思想持久化C端的聚合根的状态,具有一切ES的优点;
- 丰富的设计与案例分析文档、开源案例,以及视频教程;
- 作者持续不断的维护和更新完善;
开源地址
https://github.com/tangxuehua/enode
官网:
目前正在开发中,很快就会出来,域名已申请好:www.enode.me
真实案例开源地址
开源案例演示地址
- forum论坛案例演示地址:http://www.enode.me/post
- conference案例后台商品管理:http://www.enode.me/conference
- conference案例前台商品购买:http://www.enode.me/registration
设计文档和案例分析文档地址
- http://www.cnblogs.com/netfocus/category/496012.html
- http://www.cnblogs.com/netfocus/category/361991.html
DDD视频分享汇总(目前共2篇)
- DDD理论与案例分享(博客园组织的会议):https://pan.baidu.com/s/1jIo8mxC
- DDD博客园会议讨论视频(由于时间关系,讨论的时间比较短):https://pan.baidu.com/s/1skE2hIl
ENode视频教学汇总(目前共11篇)
- ENode-QuickStart:http://pan.baidu.com/s/1i5AoUn7
- ENode-总体架构介绍和简单例子简介-part1:https://pan.baidu.com/s/1c1AiTBq
- ENode-总体架构介绍和简单例子简介-part2:https://pan.baidu.com/s/1skLTETv
- ENode-架构深入介绍和Saga例子分析:https://pan.baidu.com/s/1hsPkdHM
- ENode-Forum案例讲解:https://pan.baidu.com/s/1dE6dgeX
- ENode-Conference案例讲解:https://pan.baidu.com/s/1ge9wOXd
- ENode-分布式部署讲解-part1:https://pan.baidu.com/s/1ge8aUAJ
- ENode-分布式部署讲解-part2:https://pan.baidu.com/s/1eRXLzhg
- ENode-分布式部署讲解-part3:https://pan.baidu.com/s/1eSG0Ftg
- CQRS架构介绍-part1:http://pan.baidu.com/s/1i4OVm6L
- CQRS架构介绍-part2:http://pan.baidu.com/s/1bpgcy0f
EQueue视频教学汇总(目前共3篇)
- EQueue-使用讲解:https://pan.baidu.com/s/1minioD6
- EQueue-设计思路分享:https://pan.baidu.com/s/1pK9g4EB
- EQueue-高可用设计思路:https://pan.baidu.com/s/1bp3F92R
- EQueue-集群功能展示:https://pan.baidu.com/s/1pLlf7j9