Есть ли разница между предварительным кэшированием и предварительной загрузкой? - PullRequest
5 голосов
/ 09 апреля 2011

Кажется, это два названия одной и той же идеи - есть ли разница?

1 Ответ

3 голосов
/ 12 апреля 2011

Отказ от ответственности: я не знаю какой-либо литературы, в которой конкретно делается (или не делает) различие между предварительным и предварительным извлечением.

Кэширование является более сложной проблемой, чем получение,Кэширование включает в себя аннулирование (знание того, что запись в кэше больше не действительна), может включать другие аспекты, такие как распределенные кэши, и может быть или не быть прозрачным для приложения.

Извлечение связано с получением того, что вам понадобится,Таким образом, IMHO предварительная выборка (слово) должна использоваться, когда

  1. вам, вероятно, понадобятся данные в ближайшем будущем
  2. данные, вероятно, будут доступны один раз
  3. вы можете отбросить данные после их использования

Подумайте, например, о предварительной выборке команд для алгоритма прогнозирования ветвления на микропроцессоре.

Кэширование связано симея копию фактических данных на более быстром носителе, скажем, кэш L2 или сервер memcached.Таким образом, предварительное кэширование отличается от предварительной выборки из-за использования: кэширование обычно включает в себя много чтений и некоторый механизм аннулирования, поэтому механизм заполнения будет использоваться для заполнения некоторого кэша часто используемыми элементами.Например.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...