麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > XML > 正文

得到XML文檔大小的方法

2024-09-05 20:53:42
字體:
來源:轉載
供稿:網友
XML文檔從格式到大小都是不是確定的。有的可能只有幾行,而有的卻有好幾兆字節。你也許會懷疑是不是需要了解XML文檔的大小。而當性能成為首要問題時,知道XML文檔大小就是件必須要作的事情了。


從性能角度講,有兩類處理XML文檔的方法。批量處理方式需要較短的時間,解析成組的文檔。實時方式就是實時的處理文檔。批處理方式的性能可以通過在一定時間內處理多少文檔來測量,而實時模式的性能也采用類似的測量方式,不過是以處理一個文檔需要多長時間來計算的。


Scenarios場景
想象一下,你有一個實時工作的系統,比如一個Web服務器。這個系統需要實時的接收客戶發來的訂單,并需要立即對這個訂單進行響應。

這個系統顯然不能用批量處理的方式進行。簡單的估計一下,假設這是個很簡單的訂單,只有十個項目,這樣所生成的XML文檔就比較小,大概每個文檔是4KB。這種情況下,使用DOM來解析收到文檔。

如果你的訂單每小時只有幾個,那么系統性能對你來說還不是問題。但是長遠考慮,總有一天訂單的數量會多到令你意識到系統性能必須提高。

現在你開始考慮提高性能來適應增長的負荷。你的訂單文檔已經很小了,把它們合并成較大的文檔也沒有什么實際的意義。從縱向考慮,這時候你可以提高現有系統處理能力;從橫向考慮,你可以增加更多的系統將負荷分散開。

再看看另一個完全不同的領域,你現在要處理的是一個大型的數據倉庫。和Web服務器完全不同,你現在用FTP來傳輸平均大小為300MB的XML文檔。如果還是使用DOM來解析XML文檔,你很快就會遇到大麻煩。相反,如果你使用SAX就會好的多,它可以直接解析流入的XML文檔,而不必把它們事先都裝入內存。


改變文檔尺寸
有時候你會遇到特殊情況需要改變XML文檔大小。想象一下,和剛才一樣你有一個實時處理XML文檔的Web服務器,而此時所有的文檔大小都是400MB而不是4KB,你不能使用DOM方式,因為那太占內存了??墒且驗檫@是個實時系統,性能很重要。你可以使用SAX,不過需要時間允許并要有強大的處理器。

在這種情況下,你可以通過改變文檔大小來改進系統執行性能。比如你可以將一個400MB的文檔分成10個40MB的,或者40個10MB的小文檔,這比起處理一個400MB的文檔更有效率。這樣你就可以使用DOM方式把文件讀入內存進行處理,及時響應每個文檔的請求了。同時還可以清除掉不相關的文檔。

在批量處理方式上也有類似情況。想象一下你在通過DOM的批處理方式處理數千個4KB大小的文檔。最好的方式是將一千個文件合并成一個4MB的文件。因為每個文檔的載入都需要占用系統時間(不論是DOM還是SAX)。通過將一千個文檔合并成一個,你只需要載入一個文檔,占用的時間只是原來的千分之一。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精国产品一区二区三区 | 性爱视频免费 | 国产精品久久久久一区二区 | 国产成人精品午夜视频' | 成人午夜在线播放 | 艹男人的日日夜夜 | 最新av在线播放 | 亚洲免费毛片基地 | 国产美女视频黄a视频免费 日韩黄色在线播放 | 九九视屏 | 亚洲最大av网站 | 日本一道aⅴ不卡免费播放 久久久久久久高清 | 久草在线高清视频 | 久草视频国产在线 | av国产在线被下药迷网站 | 黄在线 | 日韩av电影在线免费观看 | 伊人午夜视频 | 成人一区二区在线观看视频 | 国产午夜免费视频 | 美国一级毛片片aa久久综合 | 久久精品一区二区三区国产主播 | 黄污网站在线观看 | 鲁丝一区二区二区四区 | 免费久久精品 | 午夜久久视频 | www.99re14.com| 成人毛片在线免费看 | 91精品国产福利尤物免费 | 免费国产| 在线看国产视频 | 精品国产91久久久 | 综合网天天射 | 成人三级黄色片 | av影院在线播放 | 精品在线视频观看 | 黄色18网站 | 羞羞羞网站 | 一级毛片播放 | 一区二区精品在线 | 在线成人免费网站 |