Кеширование текущих пользовательских страниц - PullRequest
1 голос
/ 11 сентября 2009

Мы используем шаблоны Smarty на нашем сайте LAMP, но мой вопрос также относится к сайту с Memcached (который мы также планируем вывести в онлайн). Многие из страниц нашего сайта, созданного пользователями, имеют разные взгляды в зависимости от того, кто на них смотрит. Например, список комментариев, где выделены ваши собственные комментарии. Для каждого конкретного пользователя должен быть уникальный кеш-идентификатор для каждого вошедшего в систему пользователя. Мой вопрос, в этом сценарии, вы бы даже не кэшировали эти представления? Или издержки при создании / использовании кэша (для smarty или memcached) настолько малы, что вы все равно увидите какое-то преимущество для кэша?

Ответы [ 2 ]

1 голос
/ 11 сентября 2009

Если отдельные пользователи не запрашивают страницы снова и снова, нет смысла кэшировать подобные вещи, и я ожидаю, что издержки кэширования значительно превысят выигрыш в производительности, просто потому что коэффициент попадания в кэш будет низким.

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

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

0 голосов
/ 11 сентября 2009

Если код представления не слишком сложен, просто кэшируйте данные и генерируйте представление каждый раз.

...