企业应用架构模式读书笔记_企业应用架构模式

2020-02-28 其他范文 下载本文

企业应用架构模式读书笔记由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“企业应用架构模式”。

企业应用架构模式读书笔记

主要说明的问题

 企业级程序分层

 构建领域的业务分层

 构建用户界面 将内存模块影谢到关系型数据表 在无状态下处理会话状态 分布原则

系统架构:

架构是专家级项目开发人员对系统设计的一些可以共享的理解。这种理解可以表现为系统主要部分组成部分及这些部分的之间的交互关系。

企业应用的特点

1.数据持久:程序多次运行都必须用到他们。

2.大容量存储:巨大的数据量导致数据的管理成为系统的主要工作

3.多人同时访问:要确保多人正确的访问数据就一定存在问题。即使人数不多要确保2个人同时操作同一数据项也可能存在问题。(事务管理工具可以处理以上问题但对开发者不透明)

4.存在大量用户操作界面

5.很少有单独存在的一般与其他周边系统相互集成关于性能

1.响应时间:系统完成一次外部请求的时间。响应性是系统的一个重要指标它表明系统响应请求的速度。如果响应性太慢用户难以忍受。尽管响应时间不慢。如果在处理请求期间系统一直处于等待状态,则系统的响应时间与响应性是相同的,然而如果在处理完成之前给出一些信息表明系统已经接受到请求则响应性会好些

2.等待时间:是获取系统响应的最小时间。

3.吞吐率:给定时间内能够处理的最大的请求数。对于企业应用来说通常用每秒事务数(tps)来度量。该指标依赖于事务的复杂的程度

4.负载:系统当前负荷的表述。可以用当前有多少用户连接来表述。负载也可以作为其他指标的参造。

5.负载敏感:响应时间随负载变化的程度.(可用衰减来表述)

6.容量:最大有效负载或吞吐量的指标。它可以是一个绝对最大值或性能衰减至低于一个可以接受的一个值之前的临界点

7.可伸缩性:度量向一个系统中增加资源(一般理解为硬件)对系统资源的影响。一个可伸缩的系统允许在增加新的硬件后能够提高若干性能。垂直伸缩性指的是提高单个服务器的性能。水平伸缩性指的是增加服务器的个数。在企业应用中关注硬件的可伸缩性比关注容量和效率更重要。

系统分层

用分层观点来考虑系统时可将各子系统按多层蛋糕的形式来组织,每层都依赖其下层之上。在这种组织上上层使用其下层定义的服务,下层对上层一务所知。宁外每一层对其上层仍长 其下层的细节。

分层的好处:

1.在无需了解其他层次的基础上可以将某一层作为一个有机整体来理解。

2.可以替换某层具体实现。只要提供服务相同即可。

3.可以讲层次的依赖性减低到最低。

4.分层有利于标准化工作

分层的缺点

1.层次不能封装所有的东西有时带来联级修改。

2.过多的层次影响性能

3.很难决定建立那些层次及层次的职责

分层的历史

20世纪90年以前没有分层

20世纪90服务器|客户端系统:这种系统2个层次客户端包括用户界面和其他应用代码。服务器端基本上为关系型数据库。这种方式将业务逻辑写在客户端显得十分笨拙不易重用。其二:将业务逻辑写到服务器上作为存储过程。但是存储过程只提供有限的结构化机制这将再次导致结构笨拙。关系型数据库重要特点是标准sql,允许更换不同的关系型数据库。单存储过程是各个数据库厂商私有的不能兼容。在服务器|客户端普及的时期出现面向对象方式。面向对象为领域逻辑的问题找到答案:转向多层结构。在这个结构下表现层表现为用户界面。在领域层表现领域逻辑,在数据层存取数据。这种方式将复杂的业务逻辑独立出来单独放入中间层可以加以建模和组织。

三个基本层次

1.表现层:提供服务、显示信息。处理用户与软件的交互。主要职责是向用户显示信息并

从用户那里获取信息理解解释为领域层或数据层上的动作。

2.领域层:系统业务逻辑。它是应用必须做的所有领域工作:包括根据输入数据或已有的数据进行计算。对从表现层输入的数据进行数据有效的认证以及根据从表现层接受的命令调度那些数据层资源。

3.数据源层:与数据库、消息系统、事务管理器及其他软件通讯。主要关注与其他系统的交互。这些系统将代表应用完成相关的任务。对大多少企业应用来说就是数据库。主要永久存储数据。

层次的表现形式:

1.领域层对表现层完全影厂。

2.表现层对数据源层直接操作。

表现层可以解释用户的命令通过数据源层将相关数据从数据库中提出来让领域层在向用户显示前作相关的处理

表现层可能与数据源层一样出现很多接口。因为他们都是可能是系统的外部接口它就是

【wiki】模式的背后逻辑:它将任何系统都视为由到外部系统的接口。

分层的普遍原则:领域层或数据层绝对不依赖于表现层。也就是说在领域层和数据层代码中部要出现调用表现层代码。这条规则简化在相同基础上替换表现层的代价。也使表现层的修改带来的连锁反应尽可能的小。

如何区分领域逻辑: 假想向系统中新增一个完全不同的新层次,如果需要重复实现某项功能则说明该功能是本该在领域层实现。

领域逻辑的组织

组织领域逻辑的三种模式:事务脚本、领域模式、表模块。

1.事务脚本:保存领域模式的最简单的方式。它从表现层获取输入、进行校验证、计算处

理、将数据保存到数据库中、以及调用其他系统的操作等。然后该过程将更多的数据返回给表现层。基本的组织方式是让每个过程对应用户的可能做的一个动作。

优点:大多数人都能理解的简单过程

能够使用行数据入口或表数据入口

很容易表述事务的边界

缺点:

当如干事务需要做相类似的操作时通常脚本里包含相同的代码。通过这些相同的代码可以组成公共函数可以消除次现象,但在很多时候消除副本或检测副本都困难这样使得程序结构不清晰。

领域模式:在整个过程中不是由一个过程来完成某一业务逻辑,而是在过程中产生若干对象由每个对象都承担一部分相关逻辑。

表模块:它与领域模式类似。关键区别在与领域模式对数据表中的每条记录有一个相应的实例而表模式只要一个综合实例。它是事务脚本与领域模式的一个中间者,它围绕表而非直接围绕过程组织领域逻辑,提供更多的结构、而且更容易发现冗余代码。它最大的优点就是与软件架构中已有的部分衔接。

《企业应用架构模式读书笔记.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
企业应用架构模式读书笔记
点击下载文档
相关专题 企业应用架构模式 企业 读书笔记 架构 企业应用架构模式 企业 读书笔记 架构
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文