伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 互联网资讯 » 文章详细 订阅RssFeed

堪比Web SQL:开源项目让IDB速率原地提拔数十倍

来源:本站原创 浏览:162次 时间:2021-08-16

送寒衣,nba热火vs凯尔特人,我被同桌吸了奶图

呆板之心报道

呆板之心编纂部

IndexedDB 的长处是通用性能优越,缺点是速率太慢了。

内容库布局化查询语言 SQL,是绝大多数法式员都会常常用到的工具。不外这个东西入门容易精晓难,有很多技巧和特征是一直被人忽略的。

近来,法式员 James Long 提出了 absurd-sql,它是 Web 上 SQLite 的持久化后端,不会将整个内容库加载到内存中,而且能够持续写入。

James Long 撰写了一篇博客来注解 Web 存储 API(主要是 IndexedDB)的缺点,并先容了 SQLite 在 absurd-sql 的加持下如何供应 10 倍的性能改进及其技巧。

项目地址:https://github.com/jlongster/absurd-sql

IndexedDB 并不是完善的

如果要编写一个 web 应用法式,你可能会选择使用 IndexedDB 来存储内容,这是能在所有浏览器上运行内容库的独一选项。

当试图构建一个内陆应用时,你会发现围绕这个内容库构建整个应用并不睬想,当然,此中的少量功能照样很有用的。但如果想构建更好的收集应用法式,我们必要一种更强大的方式来处理内容。

IndexedDB 有一个缺点是速率迟缓。一般来说,内容库的简洁操纵大约必要 10ms 的时间,profile SQLite 平日必要 0.01 ms 的时间,这些时间长短和具体编写什么应用法式有关。

在 IndexedDB 中查询内容,必要用户手动操纵。IndexedDB 独一供应的函数是 count,别的的 API 只返回一系列 item。用户必需以特定的方式毗邻索引和构造内容,才气构建查询函数。

甚至添加一个新的对象存储都很难题,如果用户想打开内容库添加对象存储,必要逼迫终止其他所有 tab 与内容库的毗邻。

IDB 不是完善甚至是有些初级的,因此作者提出了 absurd-sql。

absurd-sql

SQL 是构建应用法式的好方法。尤其是小型内陆收集应用法式。键 / 值存储可能在大型分布式体系中占有一席之地,然则如果我们能够在 Web 上使用 SQLite 会不会很棒?

absurd-sql 使这成为了可能。absurd-sql 是 sql.js 的文件体系后端,它允许 SQLite 从 IndexedDB 读 / 写一小部门内容,就像磁盘一样。

值得注意的是,absurd-sql 的项目作者受到了 SQLite 的开导。

sql.js 是 SQLite 到 Webassembly 的一个端口,通过使用 Emscripten 编译 SQLite C 代码,它是 SQLite 在 Web 上应用的一个优越例子。它使用存储在内存中的假造内容库文件,因此不会保留对内容库所做的变动。sql.js 将 SQLite 编译为 WebAssembly,并允许读取内容库和运行查询。这里就存在一个紧张的问题——用户不克持续进行任何写操纵。它将整个内容库加载到内存中,而且只变动内存中的内容。刷新页面后,所有变动都将丢失。

固然内存内容库有其用途,但这会让 SQLite 的用途变得很受限。开发者要使用它构建任何类型的应用法式,都必要具备内容持久化的能力。

absurd-sql 解决了这个问题,它通过阻挡来自 SQLite 的读 / 写哀求,将它们获取并持久化到 IndexedDB(或任何其他持久后端)来工作。项目作者编写了一个完备的文件体系层,该文件体系层知道 SQLite 如何读取和写入内容块,并可以有效地精确执行操纵。这意味着它永远不会将内容库加载到内存中,而是只加载 SQLite 要求的任何数据,而且写入始终连结不变。

项目作者透露,这里使用 sql.js 是因为它已经拥有一个庞大的社区,而且是迄今为止在 Web 上使用 SQL 的最常见方式。

本文地址:http://www.wbwb.net/bianchengyuyan/229874.html 转载请注明出处!

  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net