在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ 前端持久化存存儲操作簡單,兼容性好又能存儲大量數(shù)據(jù)的方法?

前端持久化存存儲操作簡單,兼容性好又能存儲大量數(shù)據(jù)的方法?

最近開發(fā)過程碰到一個問題:
在頁面上有大量數(shù)據(jù)需要臨時存儲,在其他模塊中使用,頁面關(guān)閉時清除。
本來采用的sessionStorage,使用方便,兼容性好。直到有一次,一次性存了6千個節(jié)點信息的流圖,然后存儲就爆了。(谷歌瀏覽器66.0.3359.139(正式版本32位))

假設(shè)sessionStorage的存儲量為5M,6千個節(jié)點的流圖數(shù)據(jù)量超過5M,方便計算就以6千節(jié)點/5M為1個單位。
在需求里,1個流圖可能存在1萬個節(jié)點數(shù)據(jù)的情況。也就是一次性存儲至少達到10M。
另外,一個頁面會有多個流圖存在,保險起見,總存儲量大致為100M。

暫時想到的思路,
①數(shù)據(jù)的存儲直接交給后臺。優(yōu)點:解決了數(shù)據(jù)存儲量問題。缺點:請求耗時間,不穩(wěn)定,清除操作不方便。
②采用indexedDB。優(yōu)點:存儲量足夠了,不借助后臺。缺點:兼容性不太好,API操作不方便。
③采用其他開源的插件。這暫時沒找到較適合的,查閱了localForage文檔,看操作挺方便的,可貌似存儲量5M。

回答
編輯回答
卟乖

推薦:①數(shù)據(jù)的存儲直接交給后臺。使用這種方式。
前端的存儲設(shè)計本來就是用來存放一些小的臨時數(shù)據(jù)的,你這么大的數(shù)據(jù)已經(jīng)不適合了,后臺更適合干這個,有很多緩存框架可以使用,ehcache,redis等等,很適合來干這個。

如果后臺實現(xiàn)的合理,提供的接口穩(wěn)定,可以快速響應(yīng),人性化的api,請求耗時間,不穩(wěn)定,清除操作不方便這些都不是問題。

2017年5月7日 12:33
編輯回答
夢一場

看你的描述我認為indexedDB是最合適的
但你說的兼容性不太好具體指的是?
我的意思是,根據(jù)你們產(chǎn)品適用人群和場景,瀏覽器版本之類的跟兼容性相關(guān)的
兼容性有什么硬性需求嗎?
如果沒有的話,就采用indexedDB吧

2017年12月18日 10:30