商讯信箱
用户名: @
密  码:   注册|忘记密码
登录
个人用户经销商
您的位置:首页 > 技术频道 > 正文


源代码

【IT168 专稿】

众所周知,XML信息传输和处理是Web Service编程模型的基石。为了更有效地改善Web Service的性能,我们需要尽可能是减少和分析、序列化和传输XML数据无关的信息。快速信息集(Fast InfoSet)就是这种理念的一种开源的,基于标准的解决方案。这种技术为我们提供了一些用于最小化XML数据量和使处理XML数据的速度最大化的技术。使用这些技术,我们可以通过调整快速信息集的编码来满足不同的需要,如通过压缩来减小数据量。

    一般情况下,快速信息集文档比普通的XML文档要小,因此,在处理速度上也会比相应的XML文档更快。这样对一些XML文档的处理时间和尺寸关系紧密的情况下是非常有用的。如W3C的XML二进制描述工作组已经确定了如下的两种情况:

1. 在有带宽限制的small devices上使用Web Service
2. 在一个有高吞吐量的企业中使用Web Service

    本文主要介绍了快速信息集的基本概念,并通过举例来演示了一个基于JAX-WS的实现,在这个例子中提供了一些典型的数据来显示快速信息集和MTOM/XOP(另一种用于优化XML数据传输和处理的技术)在优化Web Service性能上午效率。

一、XML信息集和快速信息集的比较

    XML信息集是一种以XML文档格式存储的信息的抽象模型。XML信息集是W3C所制定的规范,分析一个XML文档的结果叫做XML信息集,识别不同的信息集组件叫做信息项和属性。还有更多的技术,如SOAP1.2和MTOM/XOP等,也是根据XML信息集定义的,这是因为大多数的涉及到信息存储的应用案例都是以XML文档而不是其它的编码存储的。

    快速信息集规范提供了一个使用ASN1.1二进制编码规范的信息集实例的描述。这种规范可以作为W3C信息集语法的一种选择。快速信息集文档保留了XML信息集的层次结构。并可根据我们的选择,快速信息集文档可以是自包含的,也可以不是。自包含形式的快速信息集文档可以和传统的XML文档互相转换,而且在这个转换过程中不会丢失任何信息,因此,我们可以认为自包含的快速信息集和XML信息集是等价的。

为了给读者提供一个具体的快速信息集文档的例子,在本文提供的源代码中包含了一个SOAP请求的XML文档(lookup_soap_request.xml),以及和其对应的快速信息集文档(lookup_soap_request.fi.o)。我们可以使用工具(如免费的FI转换器)由XML文档集自动生成快速信息集文档。为难验证是否有信息在转换中丢失,我们还可以使用另一个免费的工具:Noemax来浏览快速信息集文档。

1 2 3 4
©版权所有。未经许可,不得转载。
[责任编辑:李宁]
[an error occurred while processing this directive]