JavaRESTfulWebService实战.html
- 资料大王PDF
-
0 次阅读
-
0 次下载
-
2023-11-19 22:31:02
微信
赏
支付宝
文档简介:
推荐序一 ——REST开发的理想与现实
REST是一种分布式应用的架构风格,也是一种大流量分布式应用的设计方法论。REST是由(构成了Web基础架构的)HTTP、URI等规范的主要设计者Roy Fileding博士在其2000年的博士论文(中文
版名为《架构风格与基于网络应用软件的架构设计》)中提出的。到目前为止,关于REST最系统、最全面的论述,仍然是Fielding的博士论文。
REST就是Web(World Wide Web,简称Web或者WWW)本身的架构风格,是设计、开发Web相关规范、Web应用、Web服务的指导原则。不符合REST风格要求的架构和技术,很难在Web这个
生态系统中得到繁荣发展。在我看来,Roy Fielding博士就是15年以来对于分布式应用架构设计理论贡献最大的人。Fielding在HTTP规范的设计过程中,并没有采用当时大行其道的DO(Distributed
Object,分布式对象)风格,而是自出机杼、另辟蹊径,提出了一整套新的设计方法论。Fielding的开创性工作,极大地推动了分布式应用设计理论的发展。
有趣的是,其实基于SOAP/WSDL的“大Web Service”(以下简称Web Service),几乎是与REST同时发展起来的。虽然在Web Service中也使用了对象,但是Web Service其实是RPC风格的,而不
是DO风格的。Web Service在最初几年发展很快,很大原因是它解决了DO风格难以解决的异构系统(不同的硬件系统、不同操作系统、不同的编程语言,等等)之间互操作性的问题。
然而遗憾的是,设计Web Service协议栈的核心人员,几乎都是来自于企业应用阵营的,尤其是来自于IBM和微软两家公司的人。这些企业应用的专家们没有充分认识到Web基础架构的巨大优点,甚
至可以说并没有理解HTTP协议究竟是用来做什么的、为何要如此设计。在Web Service协议栈的设计之中,仍然有深深的企业应用痕迹。Web Service虽然宣称能够很好地支持互操作,然而因为协议栈的
复杂性很高,在实战中互操作性并不好(例如升级过程困难而且复杂)。此外,Web Service仅仅将HTTP协议当做一种传输协议来使用,还依赖XML这种冗余度很高的文本格式,这导致Web Service应用
性能低下。很多开发团队宁可使用Hessian等轻量级的RPC协议,也不愿意使用Web Service。在面向互联网的大流量Web应用(包括Web服务在内)这种运行环境中,Web Service在复杂性、互操作性、
性能、可伸缩性等方面的短板更加突出。因此,设计今日面向互联网的API,已经很少有人会考虑Web Service。这使得......
评论
发表评论