V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Taivas
V2EX  ›  程序员

浏览器端 js 编程需存储大量数据,有什么好的方法?session 和 localstorage 远远不够啊

  •  
  •   Taivas ·
    Taivas · 2014 年 9 月 17 日 · 7855 次点击
    这是一个创建于 4141 天前的主题,其中的信息可能已经有所发展或是发生改变。
    后台不断向前端推送差不多一两个G的离散数据,要全部存储供离线即时回放显示,但session和localstorage只有5M。咱先抛开逗不逗b不说,不考虑发回后台存储,就纯技术角度来说,如果非要在浏览器端解决可能吗?只用var数组来存最大又能存多少数据?
    28 条回复    2014-09-20 10:40:30 +08:00
    atan
        1
    atan  
       2014 年 9 月 17 日
    firebase算吗?
    vincenting
        2
    vincenting  
       2014 年 9 月 17 日   ❤️ 1
    想到的依旧是使用 localstorage,通过很多二级域名的方式来实现大小的拓展。关于跨域: http://www.nczonline.net/blog/2010/09/07/learning-from-xauth-cross-domain-localstorage/
    sneezry
        3
    sneezry  
       2014 年 9 月 17 日
    如果可以只兼容Chrome,可以通过Chrome App为指定网站声明unlimited storage权限,这样就没有5MB的限制了。不过localStorage储存大数据速度是很慢的,非常非常慢。
    zenozeng
        4
    zenozeng  
       2014 年 9 月 17 日
    indexeddb
    jsonline
        5
    jsonline  
       2014 年 9 月 17 日
    你想干啥
    manfay
        6
    manfay  
       2014 年 9 月 17 日
    这……是不是相当于用flash在线看了一电影?
    chairuosen
        7
    chairuosen  
       2014 年 9 月 17 日   ❤️ 1
    Taivas
        8
    Taivas  
    OP
       2014 年 9 月 18 日
    @atan firebase不是走后端的么。。。我希望能完成的是前端存储。。。不过还是谢谢你的建议嗯~
    Taivas
        9
    Taivas  
    OP
       2014 年 9 月 18 日
    @vincenting 我会测试一下,这个应该可以本质上解决存储容量的问题,谢谢!
    @chairuosen localForage貌似对提高存取效率有很大提升,谢谢!
    Taivas
        10
    Taivas  
    OP
       2014 年 9 月 18 日
    @sneezry 非常感谢您的建议!但是可惜的是不能只限于chrome
    Taivas
        11
    Taivas  
    OP
       2014 年 9 月 18 日
    @zenozeng 非常感谢!您可以看一下@chairuosen 提到的localForage,它本质也是利用了indexeddb
    Taivas
        12
    Taivas  
    OP
       2014 年 9 月 18 日
    @jsonline 业务不便细说,需求已经描述了=。=
    Actrace
        13
    Actrace  
       2014 年 9 月 18 日   ❤️ 1
    HTML支持本地文件读写了.
    tushiner
        14
    tushiner  
       2014 年 9 月 18 日   ❤️ 1
    对,html本地IO
    guotie
        15
    guotie  
       2014 年 9 月 18 日
    html怎样本地读写?
    zenozeng
        16
    zenozeng  
       2014 年 9 月 18 日
    @Taivas 确实,似乎你这个场景用封装的库会方便好多
    iwege
        17
    iwege  
       2014 年 9 月 18 日
    flash.
    要往用户那边推送一个 G 的数据,又不限定浏览器...
    willwen
        18
    willwen  
       2014 年 9 月 18 日 via iPhone
    http://github.com/iwillwen/mindb 你會覺得這是比較適合的方案的。
    Taivas
        19
    Taivas  
    OP
       2014 年 9 月 19 日
    @willwen 看起来不错~但是关于最大存储量方面没有提及,如果本质上还是调用localstorage, indexeddb之类的那还是没有用。谢谢嗯~
    jedihy
        20
    jedihy  
       2014 年 9 月 19 日 via iPhone
    @Taivas 用flash试试
    sampeng
        21
    sampeng  
       2014 年 9 月 20 日
    你要存多少数据啊。。。
    userdata+localstorage。存个几百M数据还是蛮轻松的,跨浏览器,无痛。。这么多优点你不用,你要用flash这个cpu动不动就卡死用户的
    几百兆还不够你玩的?
    willwen
        22
    willwen  
       2014 年 9 月 20 日 via iPhone
    @Taivas 請看StoreInterface部分的文檔,完全可以解決
    Taivas
        23
    Taivas  
    OP
       2014 年 9 月 20 日
    @willwen 看了嗯,如果我没看错本质上确实还是调用了localStorage和sessionStorage,默认都是大小5M的限制
    Taivas
        24
    Taivas  
    OP
       2014 年 9 月 20 日
    @sampeng 主题里已经提及了数据量差不多1,2个G。。。
    Taivas
        25
    Taivas  
    OP
       2014 年 9 月 20 日
    @iwege @jedihy 考虑框架选了ext。。。所以还是不要用flash了,谢谢提议~
    Taivas
        26
    Taivas  
    OP
       2014 年 9 月 20 日
    @Actrace @tushiner 目前最简单粗暴有效的方案应该就是这个了,谢谢~
    willwen
        27
    willwen  
       2014 年 9 月 20 日 via iPhone   ❤️ 1
    @Taivas 如果你需要的話,我可以教你寫本地IO的Store。目前MinDB暫時是最好的前端數據操作方案。
    Taivas
        28
    Taivas  
    OP
       2014 年 9 月 20 日
    @willwen 好的,联系方式已邮箱你,谢谢~
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2979 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 14:27 · PVG 22:27 · LAX 06:27 · JFK 09:27
    ♥ Do have faith in what you're doing.