架构之美阅读笔记05

      架构是有人居住的雕塑。居于架构,自得其乐。

    本章为我们展示Web中所体现的面向资源的架构。企业中聚焦信息的架构展示了与web一样明确的特点:伸缩性,弹性,架构迁移策略,信息驱动的访问控制等。作为IT从业人员,我们不得不承认的事实是大多数组织机构更容易在Web上搜寻信息,而不是在他们自己的系统中;他们更容易通过第三方、在全球信息系统中找到数据,而不是他们自己能够完全控制和访问的环境中。组织机构的信息管理与Web有着很大的差别,信息共享问题、技术问题恐怕是造成这一现象的原因。正因为我们必须在我们创建的架构里,所以我们应该建造既能满足我们的需要又能为我们带来灵感的架构。

    传统的Web服务。Web服务的目标是要成为一种业务策略,成为一种方式,让我们能够在一些地方定义功能,在任何地方用任何编程语言异步地访问这些功能。我们希望在不影响客户的情况下升级这些服务。而令人遗憾的是,与这个目标有关的不断变化的技术组合让人们很迷惑,也没有解决在真实组织机构的实际架构中所面临的问题。

    面向资源的架构:WebWeb是以文档为中心的,通过链接联系起来。但是链接起来的文档总是一部分,Web的愿景中包含了数据链接的思想,我们正走向数据的Web,它连接了人,文档,数据,服务和概念。在这个环境中,基本交互是逻辑上的客户端-服务器请求。Web使用的命名机制让我们能够标识文档。数据、服务、甚至概念。Web地址以HTTP协议的引用开始,接下来是响应请求的服务器名称。在此之后,一种层次化机制反应了信息空间的一条路径。当我们希望根据某个客户的状态进行查询时,我们就会寻求更直接的途径。我们从这些逻辑URL引用取回结果,要么从系统的其他部分获得,要么基于客户通过用户接口输入的数据来生成结果。关注点分离是这种交互方式的关键抽象之一。这种关注点分离与SOAP服务调用的协议本质形成鲜明的对比,在SOAP服务中,请求的结构,调用的行为和返回类型的格式通常通过Web服务定义语言捆绑到一个协议上。

    面向资源的架构方法很优雅地实现了一些折中。一方面,对于传统的方法来说,这些方法可能看起来有些奇怪;另一方面,对于那些研究过Web和他基本组成模块的人来说,它代表和实现过的最大的,最成功的网络软件构架;一方面,他要求一种完全不同的思考模式,另一方面,它支持一种强大的机制,包装并复用已有的代码、服务和基础设施,为它们提供逻辑命名接口,对所有形式的交互都不透露实现细节。

     面向资源是业务部门和技术部门引人注目的桥梁,我们应抓住机会,让功能性,美和弹性渗入到架构之中,使我们在架构中的生活变得舒适。

原文地址:https://www.cnblogs.com/crazy-soul/p/6402810.html