论基于REST服务的Web应用系统设计 REST(REpresentational State Transfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,它是目前互联网的核心架构风格。基于REST服务(RESTful Service)

admin2010-03-08  72

问题 论基于REST服务的Web应用系统设计
   REST(REpresentational State Transfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,它是目前互联网的核心架构风格。基于REST服务(RESTful Service)的Web应用系统设计任务主要包括:识别并设计REST风格的服务,采用面向服务的思想进行REST服务集成。采用这种方法设计的Web应用系统能够结合REST风格和面向服务思想的优点,近年来受到了广泛的关注。
   请围绕“基于REST服务的Web应用系统设计”论题,依次从以下三个方面进行论述。
   1.概要叙述你参与实施的Web应用系统开发项目以及你所承担的主要工作。
   2.简要叙述与传统的Web服务相比,采用REST服务构建的Web应用具有哪些优势和不足。
   3.阐述你在设计基于REST服务的Web应用系统时遇到了哪些问题,如何解决。

选项

答案1.论文中要具体介绍项目的总体需求(特别是质量属性需求)、Web应用系统的逻辑与物理拓扑结构、采用的技术等内容和承担的实际工作。 2.REST(REpresentational State Transfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,目前Web的体系结构正是基于REST风格的。REST风格中的特点是客户端朋艮务器、无状态、缓存、统一接口、分层系统和按需代码。REST组件通过以一种数据格式转移资源的表述进行通信,可以基于接收者的能力和期待的内容,以及资源的性质动态地选择不同的表述。 与传统的Web服务相比,REST服务主要有以下优势: (1) REST服务基于W3C/IETF的标准与规范(包括HTTP、XML、URI和MIME等),其实现技术简单、成熟。 (2) REST服务基于URI和超链接技术,不需要通过集中式的服务信息仓库即可发现服务资源。 (3) REST服务支持缓存,具有无状态的特性,这些使得REST服务能够支持大量客户端,构建的应用系统具有较强的伸缩性。 (4) REST服务基于轻量级的Web框架,仅仅需要基本的开发工具支持,构建过程简单且成本较低。 (5) REST服务的测试相对简单,采用浏览器即可完成服务功能测试。 与传统的Web服务相比,REST服务主要存在如下不足: (1) REST服务倡导的REST风格与实际实现尚存在一定差距。例如高层REST服务倡导使用GET、PUT、POST和DELETE所有4个统一接口,在REST实现部分通常只能采用GET和POST接口,因为大多数的代理和防火墙会屏蔽其他接口;并且XHTML表单中只能使用GET和POST接口。 (2) REST服务要求所有的输入参数都必须在URI中传递,这样会产生对参数容量大小的限制(目前的大小是4KB)。如果超出该数量,会导致HTTP协议错误(错误代码414:Request-URI too long)。 (3) 在URI中表达复杂类型的参数比较困难,且目前对URI中的参数不存在一种公认的编组(marshalling)和解编(un-marshalling)方法。 3.进行基于REST服务的Web应用系统的设计时可能遇到的问题包括:如何识别并设计REST风格服务;构建REST服务的运行时环境,包括HTTP服务器与应用服务器选型等;富客户端表现方式及编程语言的选择:系统逻辑与物理拓扑结构的分析与设计等。

解析
转载请注明原文地址:https://kaotiyun.com/show/FVQZ777K
0

最新回复(0)