Как проверить кэширование django?

17

Есть ли способ уверен , чтобы страница поступала из кеша на рабочий сервер и на сервер разработки?

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

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

    
задан muhuk 07.12.2008 в 18:41
источник

4 ответа

19

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

<!-- component_name {{host}} {{timestamp}} -->

Имя_компонента просто упрощает просмотр источника и поиск этой строки.

Все наши представления, которые являются объектно-подробными страницами, определяют контекстную переменную «page_object», и мы имеем это в верхней части основного шаблона base.html:

<!-- {{page_object.class_id}} @ {{timestamp}} -->

class_id () - это метод из суперкласса, используемый всеми нашими основными классами контента. Это просто:

def class_id(self):
    "%s.%s.%s" % (self.__class__._meta.app_label,
                    self.__class__.__name__, self.id)

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

    
ответ дан Peter Rowell 08.12.2008 в 03:33
источник
14

Предложение Peter Rowells работает хорошо, но вам не нужен настраиваемый контекстный процессор шаблонов для временных меток. Вы можете просто использовать тег шаблона:

 <!-- {% now "jS F Y H:i" %} --> 
    
ответ дан Johannes 06.04.2011 в 10:32
источник
7

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

    
ответ дан ironfroggy 07.12.2008 в 22:06
источник
3

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

    
ответ дан Ned Batchelder 07.12.2008 в 23:12
источник