zoukankan      html  css  js  c++  java
  • .NET 应用架构指导 V2 [5]

    n-tier/3-tier architecture style

      n层/3层架构风格

      n-tier和3-tier是一种描述架构部署风格的,用来将功能分为不同的部分,有点像分层架构模式,但是一个部分可以部署到不同的物理机器。

      n-tier应用架构分解应用的功能,服务组件,分布式部署,提供改进的扩展性,可管理性。每一层都独立于其它层,除非他们是上下层关系。第n层只需要指导如何处理来自n+1层的请求,如何处理请求的结果。层之间的通信是典型的异步,可以支持更好的扩展性。

      n-tier通常至少有三个分离的逻辑层,每一层分布在不同的物理服务器。每一层都具有特殊的功能。

      n-tier和3-tier的典型应用是web应用,其他的安全特别重要。业务逻辑层要部署在防火墙的后面,表现层被部署在边缘服务器上。另外一个典型应用是富客户端应用,表现层部署在客户端机器上,业务层和数据访问层部署在一个或者多个服务器上。

      n-tier和3-tier的好处包括:

    •   可维护性。因为每一层都是独立的,更新和修改都不影响其他部分。
    •   可伸缩型。因为层建立在部署的基础上,应用的缩放比例可以控制。
    •   灵活性。因为每一层独立的管理,灵活性就增加了。

      Object-oriented architecture style

      面向对象架构风格

      面向对象的架构是建立在分离职责之上的,将系统分为独立的、可重用的高效对象。例如包含数据和操作的对象。面向对象设计将系统看做是一系列相互协作对象。对象是分离的,独立的,松散耦合的。他们通过接口相互通信,通过调用其他对象的方法,或者访问属性,来发送和接收消息。面向对象的关键原则是:

    •   抽象性。
    •   组合性。对象可以通过其他对象进行组合,对其他对象隐藏内部实现,只是暴露接口。
    •   继承性。
    •   封装性。
    •   多态性。
    •   解耦性。

      常用的面向对象风格包括定义对象模型,包括复杂的操作,定义代表真实世界的业务对象(例如客户和订单)。

      面向对象的好处:

    •   容易理解。和真实世界进行映射,使得它更容易理解。
    •   可重用。通过多态和抽象提高可重用性。
    •   测试性。通过封装提高了可测试性。
    •   扩展性。
    •   高内聚。

      Service-oriented architecture style面向服务的架构风格

      SOA的原则:

    •   服务的原子性。
    •   服务是可分布的。服务可以部署在网络的任何地方,本地或者是远程,只要网络支持必要的通信协议。
    •   服务是松散耦合的。每一个服务都是独立的,可以在不破坏应用的情况下,进行替换和更新,只要不改变接口。
    •   服务共享结构和契约,而不是类。服务在通信的时候共享契约和接口,而不是内部的类。
    •       策略的一致性。
  • 相关阅读:
    Laravel5 cookie和session设置
    php如何实现登陆后返回原页面
    laravel5项目安装debugbar
    phpstorm安装laravel-ide-helper实现自动完成、代码提示和跟踪
    js 3秒后跳转页面的实现代码
    phpstorm常用plugins
    运用Xdebug调试和优化PHP程序
    Laravel5 打印SQL
    laravel 去掉index.php伪静态
    Linux gprof命令
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/1746543.html
Copyright © 2011-2022 走看看