繁体   English   中英

在单页应用程序中,我们应该在 memory 中缓存多少数据?

[英]How much data should we cache in memory in single page applications?

  • 我很想知道使用共享服务或ngrx 的单页应用程序中的数据缓存是否有任何限制。
  • 在前端缓存过多数据是否会影响 web 应用程序 (DOM) 的整体性能。

可以说我有一个非常大的复杂嵌套 object 我缓存在 memory

单页应用缓存

现在假设我想在我们应用程序的不同模块/组件中使用 object 的不同子集,为此我可能需要在 UI 上执行大量映射操作(通过匹配 id 等使用循环)。

我正在以其他方式思考,而不是在 UI 上进行如此多的操作来提取相关数据,为什么我不使用带有 id 参数的简单 API 来获取相关信息,如果它不需要太多时间来获取数据后端。

url =  some/url/{id}

如果我们不能简单地通过属性obj[prop]使用它的子集并且需要在 UI 上进行大量计算(循环等),那么缓存更复杂的嵌套对象是否值得缓存,这实际上比从 rest API ?

任何帮助/解释将不胜感激!!!

谢谢

在 memory 中缓存太多数据不是一个好主意。 它会影响您的应用程序性能。 在具有较少 memory 的系统中导致性能下降。 理论上缓存 memory 是为了保持较少的数据量。 最大支持大小为 2GB。 我认为 chrome 也被支持到该限制。 为了在客户端保留大容量数据,切勿使用 memory 缓存,而应使用客户端数据库/数据存储。 它使用磁盘空间而不是 memory。 有许多 web 技术可以在客户端存储数据,例如

  • 索引数据库
  • Web SQL
  • 本地存储
  • Cookies

可以根据客户端应用程序框架来决定。

默认情况下,浏览器将 10% 的磁盘空间用于这些数据存储。 我们还可以选择增加该大小。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM