簡體   English   中英

如何使大數據(在HTTP或WebPage上)的JSON加載速度更快

[英]How to make JSON loads faster with large data (on HTTP or WebPage)

請求頁面(在HTTP或WebPage上),除非我用更少的數據加載JSON,否則它非常緩慢甚至崩潰。 我確實需要解決此問題,因為遲早我會經常使用大量數據。 這是我的JSON數據。 --- >>> 單擊此處以JSON樹視圖

注意:1. JSON僅加載String和Integer。 2.我以前使用GoogleChrome的插件在JSONView中查看JSON,更像treeview。

我正在使用angular和nodejs。 TQ

快速介紹一下我想到的所有事情:

我曾經有過類似的問題。 我的解決方案可能會更改UI。

  1. 分頁

我懷疑您一次可以顯示那么多數據,因此該策略應該將您的數據分成少量,然后僅在客戶要求時才加載更多數據。

這樣,整個數據不再像當前那樣存儲在RAM中。 論壇就是這樣工作的(一次僅20個主題)。

試想一下,如果StackOverflow使您可以在首頁中加載問題的整個歷史記錄,那么導航器僅需要多少GB?

您可以根據需要以經典方式(帶有頁碼的按鈕,例如google)使用分頁,也可以無限滾動方式使用分頁。

為此,您需要調整api並跟蹤Front中每時每刻已經加載的頁面的索引。 AngularJS中有很多示例。

  1. 只顯示數據的開頭

當您查看Facebook評論時,您可能會有一個“顯示更多”按鈕。 在他們的情況下,也許是為了不破壞UI,但也可以用來不使數據過載。

您只能顯示數據的主行(標題或某些行)並添加按鈕,以便用戶可以根據需要加載更多詳細信息。

在您的數據模型中,成本似乎在“ C”的第二級。 只需加載數據直到第二級,然后僅在用戶要求時下載其余部分( 針對此對象 )即可。

再一次,不必超載,您的客戶端的RAM將非常感謝,並且您的客戶端的移動3G也將如此。

  1. 優化數據結構

如果還不夠:

  • 正如StefanArya在評論中所說,的確刪除了“ I”屬性,該屬性與JSON密鑰無關

刪除“ I”,因為您可以使用Object.keys()獲得密鑰名稱。

  • 您可能也不需要浮標那么多的精度。

如果有其他想法,我將在以后編輯此帖子。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM