膳绫擎说了,akka框架的核心工作道理,以及其他一些方面,比如akka会确保一个actor实例在集群中只有一个。这点其实也是和本文说的一样,也是为了避免资本竞争,包含它的mailbox也是一样。之前我设计ENode时,没懂得过akka框架,后来我进修后,发明和ENode的思惟是如斯接近,呵呵。比如:1)都是集群中只有一个聚合根实例;2)都对单个聚合根的操作的Command做列队处理;3)都采取ES的方法进行状况持久化;4)都是基于消息驱动的架构。固然实现方法有所差别,但目标都是雷同的。
小结
本文,大年夜CQRS+Event Sourcing的架构出发,结合实现高机能的几个要留意的点(避开辟络开销(IO),避开海量数据,避开资本争夺),分析了这种架构下,我所想到的一些可能的设计。全部架构中,一个Command在被处理时,一般是须要做两次IO,1)持久化Command;2)持久化事宜;当然,这琅绫腔有算上消息的发送和接收的IO。全部架构完全基于消息驱动,所以拥有一个稳定可扩大高机能的分布式消息队列中心件是比弗成少的,EQueue恰是在向这个目标尽力的一个结不雅。今朝EQueue的TCP通信层,可以做到发送100W消息,在一台i7 CPU的通俗机械上,只需3s;有兴趣的同窗可以看一下。最后,ENode框架就是按照本文中所说的┞封些设计来实现的,有兴趣的同伙迎接去下载并和我交换哦!
【编辑推荐】
- 游戏框架构建篇——愿景的设定
- 架构的本质,万千办法中的道
- iOS收集层架构设计分享
- 为什么 Linus Torvalds 偏爱x86而不是ARM架构
- 微办事架构:基于微办事和Docker容器技巧的PaaS云平台架构设计(微办事架构实施道理)
推荐阅读
因为这些技巧的合营之处是它们生成本身的特点,也许我们应当称之为无特点建模的阶段(Era of Featureless Modeling)。你仍然不得不应用已知的标注实例进行练习,然则你不必在列中填入预定>>>详细阅读
本文标题:谈一下关于CQRS架构如何实现高性能
地址:http://www.17bianji.com/lsqh/36039.html
1/2 1