1-й раз, когда вы задаете вопрос о stackoverflow. Я использую python 2.7.11 и djnago 1.10.2. Я создал модели продуктов и сохранил 1000 продуктов в моей базе данных. (Postgrelsql) Собственно, я использовал Django memcached, но не работал.Как кэшировать api с помощью django memcached
Following steps:- 1. Added settings.py in caches backends.
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'product_cache_table',
}
}
Затем «Создание таблицы кеша». Кэширование базы данных с использованием Django Memcached: -
Django может хранить свои кэшированные данные в вашей базе данных. Это лучше всего работает, если у вас есть быстрый, хорошо проиндексированный сервер базы данных. Чтобы использовать таблицу базы данных в качестве бэкэнда кэша:
Установите «BACKEND» на «django.core.cache.backends.memcached.MemcachedCache». Установите «LOCATION» в «tablename», имя таблицы базы данных. Это имя может быть любым, что вы хотите, если это допустимое имя таблицы, которое еще не используется в вашей базе данных.
In this example, the cache table’s name is "product_cache_table:"
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'product_cache_table',
}
}
Затем «Создание таблицы кеша». Перед использованием кэша базы данных, необходимо создать таблицу кэша с помощью этой команды:
python manage.py createcachetable
Write business login. (product/views.py)
django.views.decorators.cache.cache_page()¶
def heavy_view(request):
cache_key = 'product'
cache_time = 18 # time to live in seconds
result = Product.objects.all() # some calculations here
for l in result:
a = cache.set(cache_key, l, cache_time)
c = cache.get(cache_key)
return HttpResponse(c)
Если я попал в URL он сохраняет весь продукт в product_cache_table, но только PRODUCT_NAME сохраняется. когда мы получаем эти данные, мы получаем только product_name, но мне нужны все атрибуты в этой таблице. Как кэшировать Api, используя Django Memcached. Как работает рабочий процесс в Django Memcached. Я прочитал окунание
спасибо, но ключ дифференциала в заданном значении отличен, то как получить все поля в модели. мы получаем только данные кэша одного поля. –
Thanku sir, его работая правильно. –