五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > Web服務(wù)的Fast Infoset標(biāo)準(zhǔn)

Web服務(wù)的Fast Infoset標(biāo)準(zhǔn)

文章來(lái)源:365jz.com     點(diǎn)擊數(shù):358    更新時(shí)間:2009-09-17 10:24   參與評(píng)論

在cxf測(cè)試調(diào)用。net開(kāi)發(fā)的Webservice時(shí),發(fā)現(xiàn)有一fastinfoset的jar包,故google了一把。

轉(zhuǎn)自http://webservices.ctocio.com.cn/tips/148/6506648.shtml

作者: William Brogden,  出處:TechTarget

在互聯(lián)網(wǎng)出現(xiàn)前,任何為慢速調(diào)制解調(diào)器和昂貴線路編寫通信程序的人在一看到XML后,第一個(gè)反映就是覺(jué)得它的格式太浪費(fèi)了。誠(chéng)然,我們很難節(jié)省字節(jié) 來(lái)優(yōu)化XML。傳輸5000個(gè)字節(jié)的數(shù)據(jù)很可能只有500字節(jié)的真實(shí)內(nèi)容,而其它的一點(diǎn)用也沒(méi)有。"Fast Infoset"標(biāo)準(zhǔn)創(chuàng)建了一種壓縮編碼方法來(lái)傳輸XML Information Set,顯著節(jié)省了帶寬和處理能力。

  什么是XML Information Set?

  盡管很多人都在遲疑是不是需要另一種XML標(biāo)準(zhǔn),但W3C卻創(chuàng)建了"XML Information Set"或者叫"Infoset"推薦書。該說(shuō)明書試圖在更抽象的級(jí)別標(biāo)準(zhǔn)化XML文檔各部分的所有定義,而不是用文字語(yǔ)法。

  所有處理XML的說(shuō)明書都可以用Infoset定義,并且保證它們都在說(shuō)同一件事。為了避免使用類似在專門的XML處理API中出 現(xiàn)"Element"等術(shù)語(yǔ),該說(shuō)明書改為稱呼為"Information Items"。它識(shí)別十一種不同類型的信息項(xiàng)。任何能處理所有的項(xiàng)的XML文檔被認(rèn)為擁有完整的Infoset。

  Fast Infoset標(biāo)準(zhǔn)

  Fast Infoset的編碼標(biāo)準(zhǔn)由International Telecommunications Union (ITU)和International Organization for Standardization (ISO)負(fù)責(zé),分別叫做"ITU-T Rec. X.891"和ISO/IEC 24824-1。該標(biāo)準(zhǔn)發(fā)表在被廣泛使用的電信標(biāo)準(zhǔn)Abstract Syntax Notation One (ASN.1)上。

  Fast Infoset的替代方法

  由于XML冗余的性質(zhì),也就不奇怪很多人嘗試為更有效的傳輸而壓縮文檔了。廣為人知的ZIP和GZIP編碼是很好的技術(shù)。在客戶端和服務(wù)器端為 數(shù)據(jù)流執(zhí)行zip壓縮和解壓縮的過(guò)濾器很容易安裝,因?yàn)閦ip壓縮只知道字符序列,它不能利用XML文檔的正規(guī)結(jié)構(gòu),還得為解壓縮而消耗處理能力。

  Fast Infoset的Sun的Java實(shí)現(xiàn)

  Sun的Java Web Service Developers Pack (JWSDP)中實(shí)現(xiàn)了Fast Infoset,而開(kāi)源的Glassfish項(xiàng)目則實(shí)現(xiàn)了第二版。它仍然被認(rèn)為是一種不成熟的技術(shù),并未發(fā)揮全部的潛力。例如,它不能壓縮大塊文字,也不 能支持Fast Infoset說(shuō)明書中的其它高級(jí)特性。

  JWSDP 2.0版本提供了一種協(xié)商機(jī)制,通過(guò)它Web服務(wù)客戶端可以在初次與服務(wù)器聯(lián)系時(shí)使用標(biāo)準(zhǔn)HTTP頭"Accept"和"Content-Type",來(lái) 指明自己可以接受Fast Infoset編碼的數(shù)據(jù)。如果Web服務(wù)端已經(jīng)被配置合適的話,那么以后的會(huì)話將都會(huì)使用Fast Infoset編碼。

  Fast Infoset實(shí)驗(yàn)

  為了有所了解,我們使用Fast Infoset格式的XML文檔,普通文本文檔和zip格式的文檔來(lái)做對(duì)比。我執(zhí)行了一些計(jì)時(shí)實(shí)驗(yàn)。測(cè)試XML文檔是一套XML格式的測(cè)試問(wèn)題,大多數(shù)內(nèi) 容都是文本元素且沒(méi)有命名空間。該文檔比我以前見(jiàn)到的其它Fast Infoset測(cè)試對(duì)象都要大。

  我從Sun的Glassfish項(xiàng)目得到最新的Fast Infoset工具集,創(chuàng)建了一個(gè)Fast Infoset編碼版本的文檔,然后用WinZip創(chuàng)建了一個(gè)zip版本的。該工具集提供選擇Document Object Model (DOM), SAX和StAX三種風(fēng)格的解析方式。StAX是XML的Streaming API,它是一個(gè)“拉”方式的API,很多程序員都覺(jué)得它和SAX一起很好用。我只對(duì)DOM創(chuàng)建解析器進(jìn)行了計(jì)時(shí),因?yàn)樗?jīng)常在SOAP Web服務(wù)中被使用。

  對(duì)Fast Infoset格式的實(shí)驗(yàn)顯示,所有XML標(biāo)簽都被壓縮成編碼,而文本內(nèi)容還是文字。因此,我又用zip方式壓縮了Fast Infoset文件。以下是結(jié)果文件的大小:

  •   Plain XML text file 769,396 bytes
  •   Zipped XML text file 68,715
  •   Fast Infoset formatted 548,669
  •   Zipped Fast Infoset 71,929

  為了從影響實(shí)際Web服務(wù)的網(wǎng)絡(luò)延遲方面來(lái)判斷不同格式的效果,我寫了一個(gè)測(cè)試程序來(lái)計(jì)算從磁盤文件上創(chuàng)建標(biāo)準(zhǔn)Java Document對(duì)象所花的時(shí)間。我事先進(jìn)行了JVM的預(yù)熱,并在計(jì)時(shí)部分外進(jìn)行了垃圾收集。該Java標(biāo)準(zhǔn)庫(kù)被用來(lái)在讀zip文件時(shí)創(chuàng)建一個(gè)到解析器的 輸入流。為了計(jì)時(shí),我使用了JAMon開(kāi)源性能檢測(cè)工具集(強(qiáng)烈推薦)。以下時(shí)間是10次重復(fù)實(shí)驗(yàn)的平均值,單位微秒。

  •   Parse plain XML text file 62.8 msec
  •   Parse zipped XML text file 70.4
  •   Parse Fast Infoset formatted 31.3
  •   Parse zipped Fast Infoset 37.4

  我得出結(jié)論,F(xiàn)ast Infoset編碼顯著降低了解析XML文檔的時(shí)間,但只能稍微降低文本大小,而zip編碼則能很好的以一定處理時(shí)間代價(jià)降低文本大小。我認(rèn)為,我們可以隨著此工具被使用得更廣泛而更好的在Web服務(wù)中使用Fast Infoset。

查看本文國(guó)際來(lái)源

如對(duì)本文有疑問(wèn),請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答!! 點(diǎn)擊進(jìn)入論壇

發(fā)表評(píng)論 (358人查看0條評(píng)論)
請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
昵稱:
最新評(píng)論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時(shí)間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)