第一天-《企业应用架构模式》-分层

1. 分层优缺点:

1)优点:

  1. 在无需过多了解其他层次的基础上,可以将某一层作为一个有机整体来理解;
  2. 可以替换某层的具体实现,只要前后提供的服务相同即可;
  3. 可以将层次间的依赖性减到最低;
  4. 分层有利于标准化工作;
  5. 一旦构建好了某一层次,就可以用它为很多上层服务提供支持

2)缺点:

  1. 层次并不能封装所有东西,有时会带来级联修改;
  2. 过多层次会影响性能;
  3. 决定建立那些层次以及每一层的职责是什么难以决定

2. 企业应用中层次的演化:

C/S(领域逻辑放在客户端) -> 领域逻辑放到数据库,作为存储过程 -> 三层架构:表现层 + 领域层 + 数据源层

3. 三个基本层次:

职责如下:

层次职责
表现层提供服务,显示信息(例如在Windows或HTML页面中,处理用户请求(鼠标点击、键盘敲击等),HTTP请求,命令行调用,批处理API)
领域层逻辑,系统中真正的核心
数据源层与数据库,消息系统、事务管理器及其他软件包通信

其中,领域层,也称为业务逻辑。它的相关工作:对表现层输入的数据进行验证,根据输入数据或已有数据进行计算,根据从表现层接收到的命令来确定应该调度那些数据源逻辑

4. 为各层选择运行环境:

1)运行环境:

  • 1.数据源层:服务器
  • 2.表现层:胖客户,客户端;web:服务器端 (只要可能就用web表现方式,只在必须的情况下才使用胖客户方式)
  • 3.领域层:全部运行在服务器端,或者全部运行于客户端,如果必须要分离则至少保证相关的部分在一起

2)一旦选择了处理节点,尽可能使所有代码保持在单一进程内完成(可能拷贝在集群中的多个节点上),否则不但损失性能,还会增加复杂性

3)复杂性增压器:分布、显示多线程、范型差异(如对象/关系)、多平台开发以及极限性要求

相关推荐