首页 > 解决方案 > 从领域缓存中请求所有数据并保持数据更新 - iOS App Architecture

问题描述

我正在从我的应用程序中的多个位置更新数据。如何保持所有视图的数据更新?

我正在开发一个包含时间线的应用程序,您可以在其中查看您关注的人的帖子。还包含一个用户个人资料视图,您可以在其中查看自己创建的帖子,并且每个用户都可以对帖子发表评论(您可以想象一个受 Instagram 启发的应用程序)。我的应用程序遵循 VIP 架构,我的所有场景都是用视图、交互器和演示器构建的。另外,我正在使用 Realm 来缓存我的数据。

所以,我的问题与这些帖子及其缓存数据版本有关:

目前,在时间线中,我正在下载所有数据并将其存储在内存中(时间线交互器内的变量)。现在,假设我转到用户个人资料,编辑帖子,例如添加位置,然后返回时间线。我没有在时间线上更新的最新数据。

我需要随时更新数据。为此,我想到了以下场景:

在时间轴上,帖子服务下载帖子并将其存储在缓存中。然后,在内存中,在时间轴交互器上,仅存储帖子的 ID,并且每次表格视图需要刷新其单元格时,请求缓存具有相应 ID 的帖子。

因此,如果我转到用户个人资料并编辑帖子,则帖子会更新缓存。然后,回到时间线,当这个帖子显示出来的时候,我可以从对应的id中获取缓存的数据。

这样可以保持数据更新。你会实现这个场景吗?每次应用需要显示帖子时请求缓存的成本是多少?

生成的架构方案

标签: iosswiftcachingarchitecturerealm

解决方案


推荐阅读