Вопрос

Я использую Django (1.0.2) в Google App Engine и хотел бы знать, что из следующего (если таковое имеется) Модули кэширования Django должен по своей сути работать с Кэш памяти Google выполнение:

Средняя одежда

  • django.middleware.cache.UpdateCacheMiddleware

  • django.middleware.common.CommonMiddleware

  • django.middleware.cache.FetchFromCacheMiddleware

Декораторы

  • django.views.decorators.cache.cache_page

Кэширование фрагментов шаблона

В шаблоне:

{{ load cache }}{% cache 500 cache_name %}...cached...{% endcache %}

API низкого уровня

  • django.core.cache

Если некоторые или все эти модули должны работать, есть ли какие-либо изменения, необходимые для их правильной работы, и есть ли какие-либо проблемы или подводные камни, о которых следует знать при их использовании?

Я просмотрел документацию и потратил некоторое время на поиск в Google, но не нашел ответа на этот вопрос.Я подозреваю, что это может быть решение «под ключ», но я опасаюсь использовать классы Django без хотя бы одной ссылки на то, что кто-то другой сделал это без проблем.

Спасибо, любезно.

Это было полезно?

Решение

Запуск Django в Google App Engine Говорит: «Можно использовать почти весь стек Django в Google App Engine, включая промежуточное программное обеспечение». Кроме того, на этой странице есть пример, который включает в себя один из классов, о которых вы спрашивали, поэтому, по крайней мере, это должно работать:

MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
...

Различные сайты, такие как Вот этот иметь код для использования AppEngine и код кэширования Django, например django.middleware.cache.UpdateCacheMiddleware.Видеть этот поиск в Google другие ссылки различного качества.;)

На самом деле я не использовал этот материал, поэтому могу только поверить другим на слово, но кажется, что это сделали несколько человек.

Редактировать: Билеты на Джанго 7398 и 7399 имеют к этому отношение.

Другие советы

Нет, механизм приложения предоставляет собственный API memcached.Что вам нужно сделать (и, возможно, уже существует реализация этого с открытым исходным кодом, я не знаю), это написать бэкэнд кеша Django для этого API, они довольно просты, вы можете использовать существующий бэкэнд memcached в качестве основы для вашего нового: http://code.djangoproject.com/browser/django/trunk/django/core/cache/backends/memcached.py . http://code.google.com/appengine/docs/python/memcache/usingmemcache.html показывает, как выглядит Memcached API App Engine.

Вы должны проверить это http://code.google.com/p/google-app-engine-django/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top