HTML localStorage setItem和getItem性能接近5MB限制?
我正在建立一个使用
HTML localStorage的小项目.虽然我没有接近localStorage的5MB限制,但我决定做压力测试.
本质上,我将数据对象加载到单个localStorage对象中,直到它稍微低于该限制,并且必须请求设置并获取各种项目. 然后我定时执行setItem和getItem using the javascript Date object和事件处理程序(绑定获取并设置为HTML中的按钮,只需点击= P) 表现是可怕的,要求在600ms到5,000ms之间,内存使用量在接近20万的情况下接近20万.这是在MacOSX上使用Google Chrome的单一扩展名(Google Speed Tracer). 在Safari中,基本上都是4,000ms以上. Firefox是一个惊喜,几乎没有超过150毫秒. 这些都完成了基本上是空闲的状态 – 没有YouTube(Flash)的方式,没有很多选项卡(除Gmail之外),没有应用程序打开除了后台处理浏览器.一旦出现内存密集型的任务,localStorage也会逐渐减慢. FWIW,我正在运行2008年底Mac – > 2.0Ghz双核与2GB DDR3内存. === 所以问题: >有没有人完成了针对localStorage的基准测试,并设置各种不同的键值和值大小,以及在不同的浏览器上? 不幸的是,我怀疑我们将能够解决问题,但是我们可以得到的最少是了解浏览器在当前状态下的局限性. 谢谢! 解决方法
浏览器和版本成为这里的主要问题.事实是,虽然有所谓的“基于Webkit的”浏览器,他们也添加了自己的修补程序.有时候,它们会进入主要的Webkit存储库,有时它们不会.关于版本,浏览器总是移动目标,所以如果您使用测试版或夜间版本,这个基准测试可能会完全不同.
那就是整体用例.如果你的用例不是规范,那么这个问题就不会那么明显了,而且不太可能被注意到并且被广泛使用.即使有补丁,浏览器厂商也有很多问题需要解决,所以有机会为另一个版本设置(再次,夜间版本可能会产生不同的结果). 老实说,如果还没有解决,最好的方法是在适当的浏览器邮件列表/论坛上讨论这些结果.人们将更有可能做测试,看看结果是否匹配. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |