最佳实践:何时从远程DB加载数据

时间:2015-03-05 14:11:33

标签: java android database performance

当我创建应用程序时,我总是想知道什么时候是从远程数据库加载数据的最佳时刻。
如果应用程序要求登录屏幕,则:

  1. 在他的时间从远程数据库启动每个数据是否更好,然后在应用程序中使用它们?这样,登录屏幕后应用程序的速度会快得多(不需要再查询某些数据的查询)
  2. 仅在我们需要使用数据时才更好地加载数据(例如,将数据从DB显示到应用程序中)。这样,登录速度更快,但应用程序可能比第一种情况慢。
  3. 你们觉得怎么样?

2 个答案:

答案 0 :(得分:1)

这取决于场景,但我会选择选项2:首先,用户被授予访问权限,并在需要时从后端检索数据。

想象一个非常简单的场景,用户登录以查看他可以使用的产品列表(添加和删除)。解决方案包括2个屏幕:

  • 用于管理用户访问权限的登录屏幕
  • 使用产品的产品列表屏幕

对我来说,在一个好的设计中,每个屏幕都有自己的重要性,每个屏幕应该只查询它要管理的数据。

  • 登录屏幕的责任仅是执行登录,然后导航到产品屏幕。
  • 产品屏幕的责任是检索产品,显示产品并在用户结束编辑时存储它们。

如果您的登录屏幕查询产品数据以将其传递到产品屏幕,那么您将连接登录屏幕和产品数据。

无论如何,如果您有一组可供多个屏幕使用的静态数据(例如产品类别),您可以在第一次需要时查询它们并将它们存储在缓存中以供进一步访问。

另一种情况可能是存在连带问题。在这种情况下,最好的解决方案可能是下载一组用户可以使用的数据,编辑它们并将它们上传到后端(考虑到可能的并发问题)。

答案 1 :(得分:0)

如果要登录您的用户,您必须调用远程数据库来验证用户身份。没有远程数据库,我不知道你能在哪里做到这一点。 否则你是正确的,如果你想显示你得到的数据,你应该只查询数据库。