1. Web 应用服务的发展
1
Web
Web始于 1989 年,英国科学家 Tim Berners-Lee 和比利时人 Robert Cailliau 在欧洲粒子物理研究所 (CERN) 共同提议和构
造了在因特网 (Internet) 上使用超文本来发布、分享和管理信息。 Web 是 World Wide Web ,即互联网的简称,是一个相互
链接在一起、通过 Web 浏览器来访问的超文本文档系统 .
浏览器里看到的网页,可能包含文本、图像及其它的多媒体通过文档之间的超链接,可以从一个网页浏览到其它网页。
Web 2.0
Web 2.0, 是由 O' Reilly 公司在 2003 年造的一个词 , 2004 年召开 Web 2.0 大会之后,这个词就流行起来,意指基于 Web
的下一代社区和托管服务,比如社会网络、维基百科、大众分类等等,帮助 Web 用户协作和分享。比较显著的特点有:
丰富用户体验:超越传统的 Web 页面模式,让在线应用拥有桌面应用一样的丰富用户体验。
支持多种设备支持各种连接到因特网的设备,为用户提供无所不在、无缝的在线体验。
软件即服务 (Software as a Services,) 和永久试验版 (Perpetual Beta): 改变了传统软件开发和使用模式,转向永久在线、持续更新的模式。
2.
2.1 Web 应用服务架构风格- SOA
2
SOA
SOA(Service-Oriented Architecture) 是一种软件体系的架构方法,用于定义、链接和集成具有清晰边界且功能方面自包含的可重用
业务服务。服务的概念是一个独立于应用程序或基础设施 IT 平台以及上下文和其他服务的较高级别的抽象。在 Web 领域采用 SOA
架构方法的实现中,具体的协议和接口描述的标准主要包含:
SOAP
基于 XML 的简单协议,允许应用程序通过 HTTP 等传输协议交换信息。
SOAP 中使用 XML 保证了 SOAP 协议以下方面的特征:独立于平台。
可在 Internet 上使用 , 能人工读取,具有结构化特征,且基于文本。 SOAP 是推荐使用的 Web 服务通信协议,使用最为广泛。
WSDL:
WSDL 是以 XML 格式编写的用于描述 Web 服务的文档。 WSDL 文件描述四个主要事项:
服务接口提供的服务,如方法的列表名称和属性消息;
消息的数据类型;
传输协议(如 HTTP 和 JMS )的绑定信息;
调用时使用的服务地址;
备注:我们使用的 mantis 服务器(公司的 bug 管理)就以 wsdl 方式提供它的接口定义,供 robot 离线任务使用
http://mantis.smartisan.cn/api/soap/mantisconnect.wsdl
3.
2.2 Web 应用服务架构风格- REST
3
REST (REpresentation State Transfer)
REST 描述了一个架构样式的网络系统,比如 web 应用程序。
首次出现在 2000 年 Roy Fielding 的博士论文中,他是 HTTP 规范的主要编写者之一。
REST 指的是一组架构约束条件和原则 , 满足这些约束条件和原则的应用程序或设计就是 RESTful 。
REST 在 Web 领域已经广泛应用,是基于 SOAP 和 WSDL 的的替代方案。主流 Web 2.0 服务提供者
( 包括 Yahoo 、 Google 和 Facebook) 已经大量采用 REST 的开发设计风格。
REST 在 Web 应用的设计原则
客户端和服务器之间的交互在请求之间是无状态的。
从客户端到服务器的每个请求都必须包含理解请求所必需的信息。
如果服务器在请求之间的任何时间点重启,客户端不会得到通知。
无状态请求可以由任何可用服务器回答 ( 这十分适合云计算之类的环境;客户端可以缓存数据以改进性能 ) 。