本文共 6832 字,大约阅读时间需要 22 分钟。
作者:, 编辑团队, IBM
原文链接:
Web 2.0 代表一个不断发展的互联网平台。Web 1.0 是指人与计算机的交互以及提高计算机效率的技术。Web 2.0 是指人通过计算机进行交流以及提高使人类生产力的技术(参见图 1)。
Web 2.0 改变了业务与其客户之间的交互方式。注意关于 Web 2.0 的以下信息:
代表性状态传输 (REST) 是互联网构建的体系架构模型。REST 之所以流行是因为其简单性和易用性。
REST 提供了以下原则:
RESTful SOA(有时称为 WOA 或 ROA)是 SOA 的一个实例,它使用来自 Web 的概念作为主服务架构:
REST 风格的架构保留 SOA 原则。它支持以组件为中心的模型,在该模型中各种服务器端和客户端组件可以以一种可伸缩且简单的方式重用。
如前所述,JKHL Enterprises (JKHLE) 是一个虚拟公司,它期望能扩展其旅行代理部门。在本节中,我们将介绍 JKHLE 公司的业务和技术挑战,并检查其当前的基础设施(当前架构)。
JKHLE 拥有一个旅行代理部门,该部门使用一个在线旅行网站提供所有旅游资源的一站式访问。该旅行代理公司的主要业务包括:
JKHLE 想开发一种最好的旅行网站。该网站应该能够为客户提供易用的服务,并简化公司的基础业务流程。
JKHLE 有以下一些急需解决的业务挑战:
KHLE 使用的当前架构如图 2 所示。
该架构提出了以下技术挑战:
Web 2.0 SOA 场景可用于帮助 JKHLE 解决其业务和技术挑战。该场景定义了 3 种实现:
描述映射到数据源的基于资源的模式。
描述呈现数据的格式,以及基于 RESTful 服务架构的数据使用。
描述从 REST 式服务到用户收集的数据展示。
每个实现都可以组合或单独使用以解决业务解决方案。
为了解决其业务和技术挑战,JKHLE 构建了一个新架构,该架构使用 Web 2.0 SOA 场景的原则。图 3 展示了此架构,以及使用实现的位置。
新的架构具有以下优势:
JKHLE 要采用的架构将充分利用客户端和 RESTful 服务器之间的设计模式,如图 4 所示。
该解决方案模式的使用如下所示:
图 5 展示了 JKHLE 用于实现将要使用的参考架构的产品。
在本红皮书的其他部分,我们将更详细地介绍每个实现,以及 JKHLE 用于实现每个实现的产品。
JKHLE 使用 RESTful Service 创建实现来解决互联网服务域和服务集成域之间的交互,如图 6 所示。
以下架构考虑因素与 RESTful Service 创建实现有关:
本节将介绍 REST 式服务创建实现的 2 种设计模式。第一种设计模式如图 7 所示。
该设计模式描述了以下信息:
第二种设计模式如图 8 所示。
这个设计模式描述了模式的构建方式:
JKHLE 使用 Rendering and Consuming RESTful Services 实现来解决消费者渠道和互联网服务域之间的交互,如图 9 所示。
以下架构考虑因素与 Rendering and Consuming RESTful Services 创建有关:
以下产品可用于实现 Rendering and Consuming RESTful Services 创建:
本节将介绍这些产品的作用,以及在 Rendering and Consuming RESTful Services 实现中使用这些产品的设计模式。
WebSphere Application Server Feature Pack for Web 2.0
Web 2.0 Feature Pack 扩展了 WebSphere Application Server 的功能,它具有以下组件:
该组件用于支持从 Ajax 客户端到 SOA 服务和其他 Java EE 资产的连接性。该组件通过 Web 提要将企业数据扩展到客户和合作伙伴。
该组件用于将 Ajax 客户端连接到即时更新数据,比如股票报价或即时通信。
该组件是 WebSphere Application Server 基于开源 JavaScript™ 运行环境的最佳 Ajax 开发工具集。
Web 2.0 Feature Pack 可以在设计模式中使用,如图 10 所示。
该设计模型支持将 Ajax 客户端和混搭应用程序连接到外部 Web 服务、内部 SOA 服务和其他 Java EE 资产。它通过 Web feeds 向客户和合作伙伴扩展企业数据。
WebSphere sMash
WebSphere sMash 支持开发人员使用集成运行环境和工具包中的 PHP 脚本、REST 和 Dojo 快速构建并灵活地执行基于 Web 2.0 的应用程序。WebSphere sMash 侧重于快速面市、易于开发和部署,以及惯例优先原则。
WebSphere sMash 提供了干净且简单的 REST 界面。每个 REST 都由一个事件处理程序文件定义,并具有映射到 REST 动词的独特函数。例如,REST 动词 POST 映射到事件方法 onCreate(), 并拥有名为 /resources/people 的示例 URL。
WebSphere sMash 提供了将响应数据到 XML、JSON 和 ATOM 的自动化转换。
WebSphere DataPower
WebSphere DataPower 是一个特殊的网络应用集合,它有助于集成、简化和加速 SOA,并加强安全性。 WebSphere DataPower 可以多种方式支持 Rendering and Consuming RESTful Services 实现:
RESTful 资源聚合:
媒体类型转换:
REST / SOAP 仲裁:
版本仲裁:
服务仲裁质量:
JKHLE 使用 UI Composition and Communication 实现,以提供业务域的更多功能,如图 11 所示。
图 11 JKHLE 使用 UI Composition and Communication 实现的位置 |
以下架构考虑因素与 UI Composition and Communication 实现有关:
因为有很多客户端软件和技术可供选择,所以 IBM 意识到它必须支持从异构到客户端 SOA 这一范围内的所有领域。为了实现该目的,IBM 制定了以下策略:
这包括 Web 标准(比如 JSR 53 和 JSR 127)、portlet 应用(比如 JSR 286 和 JSR 168)、混搭(比如 OpenAjax 和 iWidget)和丰富的台式机 / 设备(比如 Eclipse 和 iView)。
IBM 提供并宣传应用内容的技术。这包括客户端容器的 W3C 开源 / Web 标准和开源框架(比如 Web 浏览器和 Lotus® Expeditor),以及台式和移动应用的 Eclipse 和 SWT。
IBM 完全支持用户集成、边缘集成和 SOA 层之间的集成。
IBM 端到端软件客户端平台策略如图 12 所示。
Dojo 是一个用 JavaScript. 编写的开源 DHTML 工具集。Dojo 支持将动态功能轻松地构建到 Web 页面中。Dojo 提供了许多功能,并且由 3 个主要层构成:Dojo Core、Dijit 和 DojoX。
Dojo 工具集是一个 JavaScript. 工具集,它具有丰富的用户界面,用于开发 Ajax 应用。它在大多数现代客户端容器上都能很好地工作,并且占用资源少、性能高。IBM 支持 Dojo 工具集; 在 Dojo 工具集中创建的 Ajax 应用可以被 WebSphere Application Server 和 WebSphere Portal 使用。
可从以下网址下载 Dojo 工具集:
WebSphere Portal 和 Dojo 可用于支持 UI Composition and Communication 实现,如图 13 中的设计模式所示。
该设计模式描述了以下信息:
此应用允许选择部分更新。
JKHL 实现了基于 Web 2.0 SOA 场景的 3 种实现的解决方案:
这些实现使 JKHLE 能够构建更好的旅行代理网站。该网站提供的快速架构可以交付新产品、使用新服务、消除业务孤立,以及以可消费形式在 Internet 上公开业务数据。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14789789/viewspace-617667/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14789789/viewspace-617667/