2013-09-10 3 views
1

Parse.com обрабатывает локальное кэширование, что отлично.Parse.com: Насколько велик локальный кеш?

Насколько велик локальный кеш на устройстве iOS? В online doc, Анализировать гласит:

Анализировать заботится автоматически очистки кэша, когда он занимает слишком много места.

Если я храню тысячи объектов в Parse и хотел бы кэшировать их все локально, это сработает? Каков предел кеша?

Также существует ли ограничение на сущность или глобальный предел для всех объектов?

Спасибо!

ответ

4

Похоже, что вы хотите использовать данные анализа в автономном режиме. Я не уверен в размере кеша анализа или подробностях того, как он работает. У меня есть опыт использования Parse и столкнулся с некоторыми проблемами с этой самой темой. Я думаю, что важно отметить, что в документации Parse они описывают, что они «кэшируют результат запроса на диске». Это сильно отличается от кэширования всех ваших PFObjects на диске.

По сути, кэш позволяет повторно запустить запрошенный запрос и получить те же результаты, что и в первый раз. Например, вы не можете кэшировать результаты запроса, который возвращает весь определенный тип объекта, а затем позже запускает другой запрос, который получает подмножество этих объектов из кеша. Для получения кэшированного результата вам нужно выполнить тот же запрос. Это может быть очень ограниченным.

Я сдался, опираясь на тайник Парса, прежде чем тестировать что-либо из этого, но я считаю, что его использование может быть опасным. Например, если вы извлекаете результат кэшированного запроса, отредактируйте один из PFObjects, а затем снова получите тот же результат кэшированного запроса. Я уверен, что PFObject, который вы отредактировали, не будет отражать ваши изменения. Я мог ошибаться в этом, но вы могли бы проверить его достаточно легко.

Как я уже сказал, я отказался от использования API-интерфейса Parse для автономного использования. Я закончил использование Core Data в качестве локального хранилища для своих данных и синхронизацию своих NSManagedObjects с Parse. В моем случае мне нужно было все, чтобы работать в автономном режиме. Там может быть лучший способ справиться с этим, но я его не видел.

+0

Благодарим вас за отличный ответ, Алекс! Я также использую Core Data и хотел бы синхронизировать его с Parse. Как синхронизировать основные данные и парсер? Можете ли вы указать мне на любой алгоритм или используете FTAsync? – AlexR

+1

Рад, что я мог бы помочь! Я был довольно далеко, прежде чем настраивать приложение таким образом, поэтому у меня есть собственный код синхронизации. Если бы я делал это снова, я думаю, что начну с FTASync. Если мой собственный код окажется ненадежным, я укушу пулю и голову в этом направлении. – Alex

Смежные вопросы