直接从memcache返回内容 - Django / HTTP Server

时间:2010-03-28 04:26:11

标签: django apache http memcached

我使用 Django 构建了一个Web应用程序,我正在使用 Memcached 来缓存数据。

一些视图会缓存整个HttpResponse对象,因此除了通过Django之外,还有更好的方法可以返回Memcached数据。

什么可以更快地替代HTTP请求上的Memcached数据?


我正在尝试尽可能将操作设为快速轻量级

非常感谢帮助! :)

3 个答案:

答案 0 :(得分:2)

听起来你正在寻找某种代理服务器,它可以获取缓存页面并提供服务而无需通过Django。您可以查看Varnish

答案 1 :(得分:1)

我不相信有更快的方法来“缓存/检索整个Python对象”(假设memcached存储字符串)而不是cPickle的{​​{ 1}}和loads方法,第二个参数为dumps(告诉-1使用最快,最严格的算法)。

如果你直接使用memcached那就是;如果您将它用作Django自己的缓存系统的后端,您可以使用它per-view等,Django将代表您处理序列化(以及更多)。

答案 2 :(得分:1)

如果在Apache前面使用nginx作为代理服务器,则可以使用其memcached模块直接从memcached提供缓存的HTML输出。这些数据可以由Django创建并存入memcached。我认为nginx memcached模块只支持一个memcached服务器实例。以下是一些显示原则的链接:

http://weichhold.com/2008/09/12/django-nginx-memcached-the-dynamic-trio/

http://bretthoerner.com/blog/2008/oct/27/using-nginx-memcached-module-django/