導航:首頁 > 網路數據 > json超大數據傳輸

json超大數據傳輸

發布時間:2024-06-15 11:49:31

A. 使用json傳輸數據有什麼優缺點

JSON 作為一種更輕、更友好的 Web services客戶端的格式(多採用瀏覽器的形式或訪問 REST風格 Web服務的Ajax應用程序的形式)引起了 Web 服務供應商的注意。
JSON剖析:優點和不足
對於JSON,首先要明白JSON和XML一樣也是一種簡單文本格式。相對於XML,它更加易讀、更便於肉眼檢查。在語法的層面上,JSON與其他格式的區別是在於分隔數據的字元,JSON中的分隔符限於單引號、小括弧、中括弧、大括弧、冒號和逗號
乍看上去,使用JSON的數據分隔符的優點可能並不那麼明顯,但存在一個根本性的緣由:它們簡化了數據訪問。使用這些數據分隔符時, JavaScript引擎對數據結構(如字元串、數組、對象)的內部表示恰好與這些符號相同。

這將開創一條比DOM技術更為便捷的數據訪問途徑。下面列舉幾個JavaScript代碼片段來說明這一過程,這些代碼片段會訪問先前的JSON代碼片段中的信息:

訪問JSON中的名稱: addressbook.name
訪問JSON中的地址: addressbook.address.street
訪問JSON中的電話號碼第一位:addressbook.address.phoneNumbers[0]
如果您具備DOM編程經驗,就能很快地看出區別;新手可以參看 Document Object Model 的這一外部資源,這里提供了關於數據導航的實例。

JSON的另一個優點是它的非冗長性。在XML中,打開和關閉標記是必需的,這樣才能滿足標記的依從性;而在JSON中,所有這些要求只需通過一個簡單的括弧即可滿足。在包含有數以百計欄位的數據交換中,傳統的XML標記將會延長數據交換時間。目前還沒有正式的研究表明JSON比XML有更高的線上傳輸效率;人們只是通過簡單的位元組數比較發現,對於等效的JSON和XML有效負載,前者總是小於後者。至於它們之間的差距有多大,特別是在新的XML壓縮格式下它們的差距有多大,有待進一步的研究。

此外,JSON受到了擅長不同編程語言的開發人員的青睞。這是因為無論在Haskell中或 Lisp中,還是在更為主流的C#和PHP中,開發都可以方便地生成JSON(詳見 參考資料)。

不足
和許多好東西都具有兩面性一樣,JSON的非冗長性也不例外,為此JSON丟失了XML具有的一些特性。命名空間允許不同上下文中的相同的信息段彼此混合,然而,顯然在JSON中已經找不到了命名空間。JSON與XML的另一個差別是屬性的差異,由於JSON採用冒號賦值,這將導致當XML轉化為JSON時,在標識符(XML CDATA)與實際屬性值之間很難區分誰應該被當作文本考慮。

另外,JSON片段的創建和驗證過程比一般的XML稍顯復雜。從這一點來看,XML在開發工具方面領先於JSON。盡管如此,為了消除您對這一領域可能存在的困惑,

B. json格式適合大量數據交互嗎

非常適合,一把拿到數據都是json格式,然後通過js代碼在前台進行組織,因為js代碼是在客戶端執行的,在速度上取決於用戶計算機的配置,也就是說你用了最小的數據傳輸量,所以這樣是沒有問題的

C. 伺服器端和客戶端進行json數據傳輸,json是不是也是通過http協議進行位元組流傳輸的

先看一看json的定義: JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式。
可見它只是一種數據格式,專可以對其使用任屬何可行的傳輸協議。
但一般的網路傳輸都使用http協議,
這和使用http協議傳輸視頻格式文件,音頻的道理是一致的。
json的傳輸相當於對字元串的傳輸。
所以:
伺服器端和客戶端的json數據傳輸,可以而且最好使用http協議進行位元組流傳輸,但不僅限於http協議。

D. 如何優化很長的JSON數據

現在主流的網路請求中都採用JSON作為其數據交互格式,這主要是因為JSON有以下優勢:

但如果在開發過程中,把很長很大的JSON數據在前後端傳輸,那就說明設計工作沒做好,應該盡量避免這種數據傳輸,但也可以從下面幾個方面進行下優化:

在 Skylake 處理器上,各種解析器解析同一個大數據量的JSON文件的速度(以 GB/s 為單位)如下所示:

我們知道,JSON作為一種輕量級的數據交換格式,現在被廣泛應用,特別是在API層,返回數據格式基本上都是JSON。但是, JSON字元串如果過長,那在網路傳輸中也存在耗時的 ,站在性能角度我們需要合理優化JSON。

1、伺服器端 開啟GZip壓縮

主流的服務端都支持GZip壓縮,對於一般的純文本內容GZip壓縮率在35%以上,這樣做的好處也很明顯:

2、 鍵名縮短

對於結果集而言,數據都是查詢循環輸出的,所以當我們把鍵名縮短也變相壓縮了JSON文本長度。比如原本的 {"name":"張三"} 我們可以寫為 {"a":"張三"}

3、JSON中的 中文避免被轉為Unicode編碼

現在也有不少人喜歡將JSON中的漢字轉為Unicode編碼,此時JSON文本內容就會變得很長,如果避免漢字轉碼,可以控制文本長度。

1,開啟gzip,壓縮率很高,即便是很長的文本,在網路中傳輸量也很小 。

2,不建議分次請求,除非是業務需要。連接次數過多,加大了並發的壓力。

3,提醒用戶點擊的做法可以通過按鈕反饋或loading條來做。

4,如果有可能,考慮提前預讀你可以這樣,在一個隱藏的 iframe 裡面請求伺服器,返回值是這樣的: <script> parent.notifyDataArrive(YOURS_JSON_DATA); </script>

閱讀全文

與json超大數據傳輸相關的資料

熱點內容
win10怎麼找文件夾的隱藏文件夾 瀏覽:930
U盤qq文件 瀏覽:527
轉換成格式後找不到緩存的文件 瀏覽:771
大片網站在線觀看視頻 瀏覽:752
jsp關閉當前頁面 瀏覽:580
血腥暴力網站 瀏覽:473
學文件看視頻代替上黨課 瀏覽:663
win7區域網共享如何設置密碼 瀏覽:476
濰坊市發布的文件在哪裡查看 瀏覽:355
qq群撤銷已發文件 瀏覽:25
4g網路標志 瀏覽:146
qq教程網默認資料庫 瀏覽:82
基於視頻文件的車輛分析系統 瀏覽:241
百度雲網路異常怎麼辦 瀏覽:428
win10電腦屏幕畫面模糊 瀏覽:730
手機qq怎麼打開大視頻文件怎麼打開 瀏覽:21
韓國多人強殲電影 瀏覽:656
外國電影app 瀏覽:836
linux查看usb設備號 瀏覽:255
java判斷音頻長度 瀏覽:631

友情鏈接