0

我正在考虑构建一个 LOB appjs 应用程序,我想为其使用 IndexedDB 进行存储。我对 appjs 中的 IndexedDB 有一些疑问。

  1. 最大存储限制是多少,有什么方法可以配置 appjs 的 chromium 浏览器来增加限制?

  2. 如果 IndexedDB 中的数据超出了用户的 RAM,我会不会有问题?由于它只是一个存储对象图的键值存储,我想知道它是否会将整个数据加载到 RAM 中。

谢谢。

4

2 回答 2

0

如果您在 AppJS 中构建应用程序,那么您可以跳过 indexedDB 并使用 nodejs 库来访问完整的数据库。因此,例如https://npmjs.org/package/node-sqlite-purejshttps://npmjs.org/package/sqlite3将为您提供包含事务等的完整关系数据库。

如果你想走 nosql 路线,那么 nodejs 有很多可用的 nosql 数据库。要在 app.js 代码中将数据库连接到您的应用程序,您需要在窗口中添加一个函数,该函数可以是您的数据库 api,例如它可以接受要运行的查询名称甚至 sql,然后传入一个回调函数数据运行后调用。app.js 添加到窗口对象的函数然后可以查询数据库并取回记录,然后使用结果调用回调函数。

于 2013-07-02T08:01:07.843 回答
0

关于存储限制我不能说,但理论上 indexeddb 的大小仅限于硬盘的大小。但在大多数情况下,都会设置一个限制;)。

据我所知,只有您将处理的数据才会加载到内存中。JS 有它自己的垃圾收集器,因此应该负责 RAM 的使用。

于 2013-07-02T17:19:22.707 回答