登陆注册
19092800000022

第22章 标准(3)

对比XML与JSON。当Java Script发送或接收数据时,应该使用JSON代替XML。其原因是:当在Java Script中使用XML时,将不得不编写脚本或者使用库来处理DOM对象,提取所需要的数据。但是在JSON中,数据已经在对象中了,因此不必做额外的工作。这样减少了系统开销、CPU使用,以及不得不编写的代码量。

7.4.2XML

可扩展标记语言(Extensible Markup Language,XML)是一种编码文本和数据的标准的、自描述的方式,使得利用极少的人类交互即可访问内容,或者跨广泛类型的硬件、操作系统和应用程序交换内容。

XML提供了一种标准化方式,能以一种可以跨平台使用的格式表示文本和数据。它也可以用于广泛的开发工具和实用程序。

XML基础知识。XML非常类似于HTML(两者都基于SGML语言,它自1986年起就成为了标准),因此那些已知HTML的人会发现很易于学习XML。另一方面,它们两者之间也有两个重大的区别:(1)表单与内容的隔离。HTML使用标签定义文本的外观,而XML标签定义数据的结构和内容。单独的应用程序将由应用程序或关联的样式表指定。(2)XML是可扩展的。开发人员可以为特定的应用程序定义标签,而HTML的标签是由W3C定义的。

功能。XML数据库使用比对关系数据库系统要容易得多。关系数据库系统不能满足电子商务的所有需求,因为它们独立于环境处理数据。它们也不能处理胖数据,如音频、视频或嵌套的数据结构,在云环境中它们很常见。通常改进传统的数据库来处理XML,但是转换过程易出错且有许多开销,尤其是对于更大的事务速率和文档复杂性更是如此。而XML数据库使这个过程变得顺畅,因为它们以结构化的分层形式存储XML。可以快得多地解析查询,因为无须把XML数据树映射到关系数据库表。

XML的其他优点包括:(1)自描述数据。XML不需要关系模式、文件描述表、外部数据类型定义等。此外,HTML只能确保数据的正确表示,而XML还能保证数据是有用的。(2)数据库集成。XML文档可以包含任何类型的数据——从文本和数字到多媒体对象,再到像Java这样的活动格式。(3)如果要执行修改则无须重新编程。可以利用XSL样式表修改文档和Web站点,而不必对数据重新编程。(4)数据的单个服务器视图。XML极其适合云计算,因为散布在多个服务器上的数据看起来像是存储在单个服务器上一样。(5)开放和可扩展。XML的结构可以在需要时添加其他元素。可以随着业务改变轻松修改你的系统。(6)面向未来。W3C将XML批准为一种行业标准,并且受到所有领先的软件提供商的支持。它已经变成了像医疗卫生这样领域中的行业标准。(7)包含机器可读的环境信息。标签、属性和元素结构提供了解释内容含义的环境,从而提供了开发的可能性。(8)内容与表示。XML标签描述了对象的含义,而不是它的表示。也就是说,XML描述了文档的外观和感觉,而应用程序则按描述的那样表示它。

7.4.3Web服务

Web服务描述了如何将数据从云传输给客户。我们在前面已经提到过本节的内容,现在我们深入了解REST和SOAP的工作方式,以及它们哪一个最适合你的云需求。

表象化状态转变(Representational State Transfer,REST)是一种从Web站点中获取信息内容的方式,它是通过读取包含XML文件的指定Web页面实现的,该XML文件描述和包括了想要的内容。例如,云提供商可以使用REST提供更新过的预订信息。通常,提供商可以准备一个Web页面,其中包括代码中描述的内容和XML语句。用户只需知道XML文件所在的页面的统一资源定位器(Uniform Resource Locator,URL),利用Web浏览器读取它,使用XML信息理解内容,并适当地显示它。REST在功能上类似于简单对象访问协议(Simple Object Access Protocol,SOAP),但它更容易使用。SOAP需要编写或使用一个数据服务器程序和一个用户程序(以请求数据)。但是,SOAP提供了更多的能力。例如,你想要通过云提供聚合内容以预订Web站点,那些用户可能需要使用SOAP,它允许用户与服务器之间更好的程序交互。REST使用的发布方法与许多站点用于RDF站点摘要(RDF Site Summary,RSS)的方法相同。RSS使用资源描述框架(Resource Deion Framework,RDF),它是描述Web站点的标准方式。

资源。REST中的一个重要成分是资源的存在。资源是特定信息的来源,并且每种资源都由一个全球标识符(如HTTP中的URL)引用。为了操纵这些资源,网络组件通过一个标准接口(如HTTP)通信并且交换资源的表示(如传送信息的实际文档)。例如,一个三角形资源可以描述为三条边相等的等边三角形。它可能还在逗号分隔的列表中结合了连接的三个点。

好处。REST提供了以下好处:

(1)它提供了更好的响应时间并且减少了服务器负载,这是由于它支持表示的缓存。

(2)通过减小维护会话状态的需求而改进了服务器的可伸缩性。

(3)单个浏览器可以访问任何应用程序和任何资源,因此需要编写的客户端软件较少。

(4)无须单独的资源发现机制,这是由于在表示中使用了超链接。

(5)与RPC中相比,存在更好的长期兼容性和可演化性特征,这是由于:①文档(如HTML)经过演化而具有向前兼容性和向后兼容性的能力;②资源可以根据新内容类型的定义添加对它们的支持,而不会取消对旧内容类型的支持。

在云上使用REST的应用程序的好处是:REST允许用户标记特定的查询,并且允许通过电子邮件或即时消息把这些查询发送给其他人。进入应用程序的路径或入口点的“表示”变得非常具有可移植性。

简单对象访问协议(Simple Object Access ProtocoI,SOAP)是让在一种操作系统(如Windows Vista)中运行的程序通过使用HTTP和XML作为工具交换信息与在同一种或者另一种操作系统(如Linux)中的程序进行通信的方式。过程调用。通常,远程过程调用(Remote Procedure Call,RPC)使用在像DCOM或COBRA这样的对象之间,但是HTTP并不是用于此目的。RPC带来了一种兼容性问题,因为防火墙和代理服务器将阻塞这种类型的通信量。由于Web协议已经安装并且可供主流操作系统使用,HTTP和XML提供了一种简单的解决方案,用于解决在网络中的不同操作系统下运行的程序相互之间如何通信的问题。

SOAP准确描述了如何编码HTTP和XML文件,使得一台计算机上的程序可以调用另一台计算机上的程序,并给它传递信息。它还解释了被调用的程序如何返回响应。SOAP的优点之一是:程序调用更有可能穿过通常会遮挡对那些应用程序的请求的防火墙。

由于HTTP请求通常允许穿过防火墙,因此使用SOAP可以与任意位置的程序通信。

同类推荐
  • 如何操作电脑

    如何操作电脑

    信息社会是科技、文化发展,知识爆炸的结果。不懂得计算机,将处于半文盲的境地。因此,对于计算机,不仅要作为工具使用,已经是一项文化普及的要求。我们不仅要会使用计算机做一些诸如文字处理等具体工作,更要培养一种计算机意识。
  • 中国3D打印的未来

    中国3D打印的未来

    自2012年以来,有关3D打印的报道屡见报端,这一新型制造技术引起了全世界的广泛关注。《中国3D打印的未来》作者、中国3D打印技术产业联盟秘书长罗军认为,中国从20世纪90年代初开始涉足3D打印技术,并取得了巨大进展,但与国外同行相比仍存在一定差距。特别是中国3D打印企业普遍存在“小而散”、各自为政的现象,如何发挥整合优势、抱团发展是目前亟需解决的问题。如果能够加强同行合作,抱团发展,形成合力,相信3D打印会成为唯一一项中国有可能赶超世界先进水平的技术。
  • 网络广告经纪人

    网络广告经纪人

    本书为网络广告经纪人培训认证的指定教材,该认证是商务部中国商务广告协会和信息产业部中国电子商会联合推出的,旨在为国家造就和培养出一大批网络广告梯队型人才。该教材包括网络广告经纪人的介绍和发展趋势,以及网络广告的原理、策划、设计、制作、发布与交换、效果评估、管理,以及网络广告营销的国内外最新的成功案例,还提供了一些常用的网络广告制作工具。本教材适合助理网络广告经纪人和网络广告经纪人层次使用。也可作为高校广告、电子商务等专业的教材。
  • 条形码技术与应用

    条形码技术与应用

    条形码是一种可供电子仪器自动识别的标准符号,是由一组黑白相间、粗细不同的条、空符号按一定编码规则排列组成的标记,用以表示一定的信息,确认某个物体或规定它的移动,能正确快速地为产、供、销各环节在采集、处理和交换信息时提供标识。
  • 领导干部信息化基础

    领导干部信息化基础

    本书共分6章,分别介绍了计算机网络综述;信息化的三个主要领域,即电子政务(政府信息化)、企业信息化和电子商务;PowerPoint2000中文演示文稿等内容。
热门推荐
  • 爱情未完待续

    爱情未完待续

    爱情,亲情,友情,我们生活中不可缺少的一部分,当我们迷失在现实当中的时候,拿什么来拯救那些已经消失了的感情呢?爱情未完待续,一切都未完待续。
  • 百界苍穹

    百界苍穹

    道纵横,须百界。一个平凡少年,缓缓踏入苍穹。
  • 至尊圣皇

    至尊圣皇

    一个以武为尊的世界,强者为尊,弱肉强食。
  • 红方蓝方

    红方蓝方

    军事小白写的小说。在帖游吧玩贴游,贴游~~开了个贴,根据玩家们的表现写的。因为游戏是周更,所以小说更新不会很快。因为基于玩家,所以未来的剧情我也不知道哦。
  • 贵族学院:吸血鬼放开我

    贵族学院:吸血鬼放开我

    宝宝是一个极其不爱惹事的人(作者大大:哦?是吗,我咋不知道?),好吧,在腹黑姨妈的坑蒙拐骗下,我回来了,可是,这是个神马情况,出机场就偶遇吸血鬼大神,好,我认,可为嘛我走哪他到哪?“女人,你是我的啦”某男极其霸道的说“是吗,我怎么不知道?”某女无良“提起裙子走人了,怎么,还想对为夫不负责?”“......”“喂,腹黑男,你是不是爱上我了?”——月紫夕“我爱你,我愿用一切去爱你宠你。”——冷空冽此文已弃
  • 浮华旧梦

    浮华旧梦

    十里洋场,纸醉金迷的旧上海,说不尽的妩媚风流,道不尽的缠绵悱恻。他以为她只是他的棋子,奈何她却沁入他的灵魂。她以为他只是她的恩人,奈何他却刻入她的心底。她是万丈红尘中的一缕柔光,照进他的心里,叱咤风云的他,任凭她在自己的世界翻云覆雨。她爱他,敬他,甚至甘心为他付出一切,却不曾想过那样的背叛于他。
  • 校园都市神人

    校园都市神人

    跟随着老头子,学会了一身了不得的身手。现在的他,正在慢慢地走向致富,奇门道术,修真,异能都是浮云!
  • 六脸

    六脸

    一個人用六張臉皮活着,經歷之豐富,痛苦之深切,感觸之豐富,難以想象……
  • 灵案之古墓奇谭

    灵案之古墓奇谭

    一座藏匿在西藏深处的神秘古墓将一群人的命运紧紧地牵连在一起。到底是谁设得一场局,或是所谓的宿命?长生录,鬼王墓,神女素雅不死谜……一切的一切,只有到最后一页才能知晓。
  • TFBOYS之当年的夏天

    TFBOYS之当年的夏天

    舒淇,墨筱倩,和林栀是不追星的闺蜜,无意中遇到TFBOYS,不知不觉爱上他们,中间遭遇女配江萧萧,林静雅,和陈雪诗的陷害和阻挡,最终是什么样的结局呢?