天天看点

ENode框架使用场景简述

enode是一个.net平台下,纯c#开发的,基于ddd,cqrs,es,eda,in-memory架构风格的,可以帮助开发者开发高并发、高吞吐、可伸缩、可扩展的应用程序。

开源项目地址:https://github.com/tangxuehua/enode

enode可能的应用场景如下:

当你正在找一个ddd的开发框架时,可以考虑enode;

当你想找一个cqrs架构的实现框架时,可以考虑enode;当你的系统具有大量的写入,同时又有更大量的读取时,只要系统能接受写入数据和读取数据的最终一致性(秒级),那就可以考虑使用enode;enode可以让我们对读写两端做不同的技术架构,分开优化,互不影响;

当你的业务场景从用户的角度去看,读和写操作就相互明确区分的,就是用户在写入或更新一个数据后不需要立即看到结果的场景,那就可以考虑使用enode;

当你想实现cqrs,但还是想能在command发送后可以同步获取command处理结果时,可以使用enode;

当你要实现es模式时,可以使用enode;es的最大好处是整个系统的所有数据的变化都可以追溯其历史,我们可以把数据还原到任意的某个历史状态;

当你要找一个异步的、事件驱动的应用开发框架时,可以考虑enode;enode在实现eda架构的同时,可以帮助我们自动从架构层面解决消息的幂等处理、消息不丢,以及并发处理等技术问题;

当你希望你的应用能支持高并发、高吞吐、可伸缩、可扩展这些非功能性需求时,可以考虑enode;

当你需要找一个saga开发框架来代替分布式事务时,可以考虑使用enode;

只要你的系统需要满足以上的若干点,就可以考虑选择使用enode。