Mat*_*att 5 javascript performance ipad ios indexeddb
我们正在尝试将 Web 应用程序加载时的大量数据预先缓存到索引数据库中。根据我的性能测试,桌面浏览器(例如 Internet Explorer)上的速度相当不错,我可以在大约 2 秒内插入 10,000 条记录。但与 iPad 上完全相同的功能相比,时间缩短至 30 秒。这种比较让我大吃一惊。
有谁知道将大型数据集插入indexedDB的任何提示或技巧。我不知道这是否可能,但我们是否可以构建一个预填充所有数据的indexedDB服务器端的副本,然后将其发送到客户端,然后将其存储到浏览器。沿着这些思路有什么可行的吗?
谢谢
您的数据如何存储在indexeddb中?是否所有内容都在单个对象存储中,或者是否使用多个对象存储。您是否立即需要所有缓存的数据?
如果您只有一个对象存储,您可以从存储最初需要的所有数据开始,提交该事务并为其余所有数据启动一个新的事务。这样您就可以开始检索初始数据,同时插入其余数据。IndexedDB 是异步的,所以它应该会阻止你。
如果您有多个对象存储,则可以使用相同的策略。首先立即填充您需要的对象存储,并延迟其他对象存储。
或者可以考虑使用AppCache API而不是 indexeddb api。使用这个你可以缓存一个包含所有你想要缓存的 json 对象的 javascript 文件。当您不需要对数据进行大量查询时更是如此。
归档时间: |
|
查看次数: |
4687 次 |
最近记录: |