У вас миллионы данных, что немного беспокоит, если приложение имеет большое количество обращений в секунду. В этом случае большее количество совпадений означает увеличение дискового ввода-вывода. Любое узкое место в дисковом вводе-выводе должно повлиять на общую производительность приложения.
Исходя из моего личного опыта, лучший подход - решить, какие данные следует кэшировать, а какие нет, какие уровни и архитектура кэширования должны быть б / у, et c. Например, вы можете не захотеть кэшировать какие-либо очень динамичные данные c. Например, тележки пользователя, баланс, количество просмотров и т. Д. c. Поскольку эти данные постоянно меняются, их кеширование обычно приводит (почти к) к удвоению потребления ресурсов, а не к увеличению фактической пропускной способности в практическом сценарии ios. Если набор данных извлекается редко, он может вообще не нуждаться в кешировании.
С другой стороны, если какая-то часть ваших данных имеет очень высокий коэффициент попадания, например, элементы домашней страницы, верхние сообщения , самые продаваемые товары, et c. тогда их следует кэшировать с использованием механизма быстрого и высокодоступного кэширования, такого как хранилища объектов. Таким образом, высокий спрос может быть удовлетворен в случае тысяч одновременных обращений к этим данным без ущерба для дискового ввода-вывода или производительности базы данных.
Проще говоря, разные сегменты данных приложения могут нуждаться или не нуждаться в разных подходах для кеширования.