Я разработал сайт Django. Между образцами экземпляров в dabatase и страницами на сайте существует довольно много отношений 1 к 1.Могу ли я заставить кеш-сервер Django использовать только путь каждой страницы в качестве ключа?
Я хотел бы кэшировать каждую страницу на сайте (используя memcached как back-end для кэша). Сайт не слишком велик - в соответствии с калькуляцией на основе конверта, все это должно вписываться в довольно небольшой объем оперативной памяти - и данные не меняются особенно часто, поэтому весь сайт может эффективно жить в кеше.
Однако, когда данные меняются, я хочу, чтобы кеш отражал это сразу, поэтому в идеале я хотел бы, чтобы каждый экземпляр модели мог очистить свою собственную страницу из кэша при сохранении.
То, как я себе представлял, я бы это сделал, чтобы кэшировать страницы со своим URL-адресом в качестве ключа. Затем каждый экземпляр модели может использовать свой URL (который он знает через get_absolue_url()
), чтобы очистить свою страницу от кеша.
Можно ли использовать механизм кэширования Django для каждого сайта в качестве ключа кеша?
Aha! Gotcha - отличное исследование, большое спасибо. –