我正在开发一个应用程序,基本上允许人们创建,加入和管理其他人的组。小组内的人也可以互相发信息。
我一直想知道哪条路会更好:
为远程数据库保留所有信息,包括发送给用户和从用户发送的消息。还要保留远程数据库的本地副本,并使其与远程数据库保持同步。每当应用程序需要查询信息时,它都会进行查询以查看本地表是否是最新的。如果它不是最新的,它会更新表并在本地表上运行查询。这样它将保留本地副本,并且当没有远程表的更新时,应用程序将具有快速查询。
答案 0 :(得分:3)
从我的角度来看,在大多数情况下,移动设备中的数据库只是真实数据库的缓存,即服务器中的缓存。因此,我的建议是将本地所有需要与服务器同步的数据保存在本地。这样,即使没有连接也可以显示信息,并在信息更新时向用户显示信息。
此外,这种方法使本地数据无风险,因为它存储在服务器中。所以:
当然,这是一种非常通用的方法,需要针对每种情况进行检查,因为不同的情况可能需要采用不同的方法。
答案 1 :(得分:2)
我的基本响应是,我会将数据保存在一个位置并远程访问它,除非有一个主要原因要将其保存在本地。必须有一些情有可原的情况来强制要求我在本地保存一份数据。只需确保您的查询准确,简洁。不要提取超出您需要的数据。
但是,您可以在本地保留一部分数据。特定于用户的项目(如消息),但保留不相关的数据只会增加开销和膨胀。