【问题标题】:Parse.com: How large is the local cache?Parse.com:本地缓存有多大?
【发布时间】:2013-09-10 14:54:29
【问题描述】:

Parse.com 处理本地缓存,这很棒。

本地缓存在 iOS 设备上可能有多大?在online doc 中,Parse 声明:

Parse 负责在占用缓存时自动刷新缓存 空间太大。

如果我在 Parse 中存储了数千个对象,并希望将它们全部缓存在本地,这可行吗?缓存限制是多少?

还有每个实体的限制或所有实体的全局限制吗?

谢谢!

【问题讨论】:

    标签: ios objective-c caching parse-platform


    【解决方案1】:

    听起来您希望能够离线使用 Parse 数据。我不确定 Parse 缓存的大小或它的工作原理。我有一些使用 Parse 的经验,并且在这个主题上遇到了一些问题。我认为重要的是要注意,在 Parse 的文档中,他们描述了他们“将查询结果缓存在磁盘上”。这与在磁盘上缓存所有 PFObject 非常不同。

    基本上,缓存允许您重新运行已经运行的查询并获得与第一次相同的结果。例如,您不能缓存返回所有特定对象类型的查询的结果,然后再运行另一个从缓存中获取这些对象子集的查询。您必须运行完全相同的查询才能获得缓存的结果。这可能非常有限。

    我在测试之前放弃了依赖 Parse 的缓存,但我相信大量使用它可能会很危险。例如,如果您检索缓存的查询结果,编辑其中一个 PFObject,然后再次检索相同的缓存查询结果,我很确定您编辑的 PFObject 不会反映您的编辑。我可能错了,但你可以很容易地测试它。

    正如我所说,我放弃了依赖 Parse API 进行离线使用。我最终使用 Core Data 作为我的数据的本地存储,并将我的 NSManagedObjects 与 Parse 同步。就我而言,我需要在离线时一切正常。可能有更好的方法来处理这个问题,但我还没有见过。

    【讨论】:

    • 感谢您的精彩回答,亚历克斯!我也在使用 Core Data,并希望将其与 Parse 同步。如何同步 Core Data 和 Parse?你能指出我的任何算法还是你在使用 FTAsync?
    • 很高兴我能帮上忙!在我以这种方式设置我的应用程序之前,我已经走了很远,所以我有自己的同步代码。如果我从头再来,我想我会从 FTASync 开始。如果我自己的代码被证明不可靠,我会硬着头皮朝这个方向前进。
    猜你喜欢
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-02
    • 2015-08-05
    • 2015-03-14
    • 1970-01-01
    相关资源
    最近更新 更多