我使用 Django 构建了一个Web应用程序,我正在使用 Memcached 来缓存数据。
一些视图会缓存整个HttpResponse对象,因此除了通过Django之外,还有更好的方法可以返回Memcached数据。
什么可以更快地替代HTTP请求上的Memcached数据?
我正在尝试尽可能将操作设为快速和轻量级。
非常感谢帮助! :)
答案 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/