• 假期阅读笔记五


    架构之美——企业级应用架构(三)

          今天我阅读的是《架构之美》的第五章——面向资源的架构:在Web中。刚刚看到这个题目时,我不是很理解题目的含义。于是我上网查阅了一些资料,原来题目的意思是面向资源的架构基于Web中,并且面向资源的架构的英文是Resource-Oriented Architecture,简称ROA。

          熟悉ROA的人都知道,ROA有四大属性:可寻址性,无状态性,统一接口,连通性。其重要性不言而喻,可寻址性可以使服务的各个重要方面都可以被外界访问,URL可以作为每个重要方面的一个唯一的标识符,URL是可以被收藏,可在应用中传递,可指代实际资源。可寻址性令别人可以使用你的服务构建mashups应用,将其用于你意想不到的场合。状态分两种:应用状态(application state)和资源状态(resource state),前者保存在客户端,后者保存在服务端。每个HTTP请求是完全孤立,请求包含服务器实现该请求的全部信息,不依赖于之前某个请求。无状态性意味着服务端不应保存应用状态,客户端应当管理自己的应用状态。当然ROA易于提升应用的规模,若一台服务器无法处理所有请求,可进行负载均衡,让请求转移一半,至于选择哪个一半,无所谓,因为具有无状态性,每个请求皆是自包含的。最最重要的一点是具有更高的可靠性,若客户端请求超时,则客户端只要把请求重发一遍即可。

          在本章的开篇叙述了这样的一句话:企业中聚焦信息的架构展示了与Web一样的明确特点:伸缩性、弹性、架构迁移策略、信息驱动的访问控制等。在大家的概念中,Web是以文档为中心的。具体来说,就是当大家想到Web时,就会想到在Web浏览器中看一些文档,例如html文档、jsp文档。但是Web真正的神奇的地方确实链接,我们可以通过创建新窗口来访问链接获得那些公开的信息。链接起来的文档只是一部分,我们正在走向的Web是数据的Web,它连接了人、文档、数据、服务和概念。在这个环境中,我们通过逻辑的客户端-服务器的请求来交互。关注点的分离是这种交互的关键抽象之一,我们分离了我们有兴趣讨论的东西,操作这些东西,以及选择收发它们的方式。通过分离事物的名称和形式结构,我们可以复用同样的逻辑名称,支持多种类型的交互。面向资源的架构的标识是向命名的资源发起逻辑请求的过程,这些请求通过某种引擎解释,转成该资源的物理表现形式(如html页面,xml页面等)。面向资源的架构方法很优雅地实现了一些折中。对于那些研究过web和它的基本组成模块的人来说,它代表了人们的设想和实现过的最大的、最成功的网络软件架构。它支持一种强大的机制,包装并复用已有的代码、服务和基础设施,为它们提供逻辑命名接口,对所有形式的交互都不透露实现的细节。面向资源的方法在业务部门和支持它们的技术部门之间提供了引人注目的桥梁。Web服务的目标是要成为一种业务策略,成为一种方式,让我们能够在一些地方定义功能,在任何地方、以各种编程语言异步地访问这些功能。

         最后的最后,依然用一句很有深度的话结束今天的阅读感悟:任何事物的质变都来自于量变的积累。

  • 相关阅读:
    外部无法捕捉Realm的doGetAuthenticationInfo方法抛出的异常
    Redis多实例及主从搭建
    Redis安装
    window.showModalDialog两次加载问题清除缓存方法
    JQuery分页插件bs_pagination的应用
    解决IE11出现异常SCRIPT5011:不能执行已释放Script的代码
    通过CSS禁用页面模块的复制和粘贴功能
    C# toString()转换详细(转)
    百度ue富文本编辑器setContent方法报错初始化加载内容失败解决办法
    前端页面div float 后高度 height 自适应的问题
  • 原文地址:https://www.cnblogs.com/niujunyan/p/6305700.html
Copyright © 2020-2023  润新知