SOA架构设计经验分享—架构、职责、数据一致性
来源:未知 责任编辑:责任编辑 发表时间:2015-05-17 16:44 点击:次
阅读目录:
1.背景介绍
2.SOA的架构层次
2.1.应用服务(原子服务)
2.2.组合服务
2.3.业务服务(编排服务)
3.SOA化的重构
3.1.保留服务空间,为了将来服务的组合
4.运用DDD+GRASP进行分析和设计(防止主观的判断导致错误的假设)
5.SOA分布式下的数据一致性
5.1.分布式事务(基于DTC的分布式事务)
5.2.事务补偿(提供正向或反向的操作来让数据在业务上是一致的)
5.3.异步EDA(基于异步事件流来实现柔性的分布式事务)
6.总结
1.背景介绍
最近一段时间都在做系统分析和设计工作,面对的业务是典型的重量级企业应用方向。突然发现很多以往觉得很简单的问题变得没有想象的那么容易,最大的问题就是职责如何分配。论系统架构设计的最大的问题,其实也就是职责的分配,分配的合理,实现起来就会很柔性,反之就会使架构很混乱。
软件的生命周期大概可以归纳为四个基本的过程,分析、设计、实现、测试,当然这仅仅是一个最为粗略的表示而已。不同的方法论有着不同的使用这几个过程的方式。RUP使用快速迭代的过程,在这个几个子过程中适当的输出一些过程制品,每次迭代都是进行相同的分析、设计、实现、测试。而在Scrum中,不提倡输出任何文档形式的过程制品,也同样有着上述几个过程,强调以人为中心,通过沟通来解决大部分的问题。
不能用好与不好来判断哪一种方法论,只能根据目前的实际情况综合权衡。RUP的每次迭代中有几个关键的制品对系统分析、设计很重要,可以说是非常重要,如:词汇表、业务规则文档、用例、领域草图。这几个制品对分析、设计很重要,需要从这几个制品中提炼出设计模型最终才能落地。这主要用在业务复杂的应用系统中。而Scrum更加的轻量级,可以用在互联网项目中,业务不是太复杂的情况下。
相关新闻>>
- 发表评论
-
- 最新评论 更多>>