单页应用程序访问服务器的成本是多少?

时间:2014-07-31 19:51:02

标签: javascript taffydb

我正在构建一个可在普通平板电脑上运行的单页应用程序,因此资源不会太广泛。

我正在考虑最初检索应用程序所需的所有数据并将其存储在TaffyDb - 本地javascript数据库中 - 并在本地查询,而不是每次用户引出事件处理程序时都联系服务器。

我想知道哪一个在速度/内存方面会更好。所有数据都存储在TaffyDb本地,或每次需要时检索相关信息。 数据是简单的JSON对象,最多10个。

2 个答案:

答案 0 :(得分:1)

一切都取决于。

数据是静态的吗?它会随着时间而改变吗?如果它是静态的,只需在本地定义它。

但是,如果您的数据发生变化,这就是您需要远程获取数据的原因,那么您可能希望将本地数据库或localStorage用作“缓存机制”的一部分。

例如,如果您的SPA需要数据,请先在本地缓存中查找。如果它在那里但它太旧了,那么通过查询远程数据库来刷新数据。但是,如果您的缓存中的数据仍然是新鲜的,那么只需重复使用它即可。

因此,实现缓存机制将有助于减少对远程数据库的调用。

答案 1 :(得分:1)

我看到估计每个HTTP请求需要花费大约40,000台机器指令才能执行。在手机上,我认为它甚至更贵。

但我更关注另一个方面 - 有四种类型的移动应用程序:

  1. 已连接(始终);
  2. 偶尔会断开连接;
  3. 偶尔连接;
  4. 断开。
  5. 每个案例都需要自己的策略。例如#3肯定需要本地DB和一些同步手段。对于#2,只需15分钟(或左右)的到期时间即可进行一些本地缓存。

    您似乎倾向于选择#3。您需要考虑客户端/服务器同步。在某些数据架构上,这可能非常重要。