導航:首頁 > 網路數據 > 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控制面板怎麼看 瀏覽:574
如何編程換裝游戲程序 瀏覽:269
怎麼登錄沭陽縣民政局網站 瀏覽:451
iphone6降級ios7 瀏覽:92
怎麼隱藏三星應用程序圖標不見了 瀏覽:203
可以兼職的app 瀏覽:493
iphone圓角圖標製作 瀏覽:659
建設銀行app怎麼申請 瀏覽:163
系統備份文件夾在哪 瀏覽:998
qq分組exo韓文 瀏覽:849
華碩裝裝win7系統教程視頻 瀏覽:407
什麼是數據直連 瀏覽:210
筆記本連接無線網路慢 瀏覽:486
壓縮文件怎麼控制在4m以內 瀏覽:1
indesign最新版本2016 瀏覽:300
為什麼壓縮文件窗口變小 瀏覽:904
居民醫保工行手機app怎麼繳費 瀏覽:602
圖論與網路流理論答案 瀏覽:913
安裝win10後需要輸入WiFi密碼嗎 瀏覽:412
c語言加法的編程格式是什麼樣的 瀏覽:195

友情鏈接