`
jiuyuehe
  • 浏览: 181133 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

站在云端一

阅读更多
SOA设计原则
一 PA阶段(pre-Architecture)
1 需求矩阵
软件需求=功能需求+质量属性+约束
按层次分为:业务级别,用户级别,开发级别
 
功能
质量
约束
业务级别需求
xxx
可扩展
业务环境约束
用户级别需求
xxxx
安全,高可用
使用环境约束
开发级别需求
xxxx
可定制,可重用
开发环境约束
 
二 CA阶段(Conceptual Architecture)
定义就是,对高层组件的职责进行笼统定义,并给出高层组件之间的关系。并不设计到接口的细节
主要也是为三个阶段 
 a  基于关键的功能进行初步设计
 b  综合初步设计,确认高层分割
 c  考虑非功能需求做出相应决策
总结: 关键功能 + 关键质量 + 业务需求与约束
 
此步可以通过鲁棒图进行分析得出高层组件之间的关系
得出概念分层结构图为理想化架构
 
根据概念架构继续细化分析
目标
场景
决策
集成性
如何将大量的异构系统进行集成
指定系统集成标准。。。
高可用
考虑到磁盘,中间件,网络等等各个环节一旦发生故障,如何避免单点故障
磁盘阵列,故障转移集群,双链路网络
安全性
数据不丢失,个人隐私保护等等
数据备份,灾备方案,加密,存储,访问授权等等

 

三 RA 阶段


物理层架构设计:
数据库的架构设计:
难点是分布式方案设计,主要应该从三个方面考虑:垂直切分,水平切分,构建OLAP 和 离线数据处理
1) 垂直切分 就是按照系统功能进行数据切分,从系统,子系统,模块逐步深入进行切分,目的是实现数据存储级的功能解耦。由于数据存储层分开不能直接夸库访问,只允许通过程序级别的接口机型访问,可以是API,也可以是SOA架构中的服务。由于本身从代码上来讲,这些代码是相互独立的,所以数据如何存储影响不大,可以完全实现解耦设计。
2)水平切分 对相同的功能采用相同的数据结构定义,但会在数据级进行区分,如按照时间,按照不同的客户群,按照业务数据的某个属性,都是可以的。水平切分是实现SaaS系统Multi-Tenant`
3)构建OLAP 数据处理大致分为俩类:OLTP (联机事务处理)OLAP(联机分析处理)
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics