页面缓存wsgi中间件

pagecache的Python项目详细描述


wsgi缓存中间件。

pagecache是一个wsgi中间件,可用于缓存完整的响应 来自wsgi应用程序。pagecache在memcached上运行良好,但可以使用 还有其他缓存后端。

pagecache还没有经过广泛的测试,请谨慎使用。

用法

下面是一个简单的示例,让您开始学习:

from pagecache import PageCacheMiddleware

app = ...
cache = memcache.Client(...)
cached_urls = (('/foo', 30, 120), # url prefix, TTL, grace period
               ('/bar', 3600, 60))
app = PageCacheMiddleware(app, cached_urls, cache)

缓存的url

要缓存的url列表在cached_urls列表(或元组)中给出。 此列表的每个条目都是以下格式的元组: (<url prefix>, <TTL in seconds>, <grace period in seconds>)

页面在ttl期间从缓存提供。当TTL周期 宽限期到期。在恩典中的第一个请求 period将重新计算页面并将新结果存储在缓存中。 当计算新结果时,将从 缓存(直到宽限期到期)。这是为了防止 dog-pile effect

缓存对象

pagecache只在memcached中测试过,但它可以在其他缓存中工作 后端也一样。唯一的要求是缓存对象应该具有 以下方法的语义与memcached中的类似: getsetdeleteadd

关于cookies的注释

应用程序返回的所有设置cookie头都将被忽略。 另外,根据您的应用程序,您可能最希望确保 应用程序不使用任何传入的cookie信息来计算 将缓存的响应。

安装

您可以从 github repository

git clone git://github.com/abiczo/pagecache.git
cd pagecache
python setup.py install

待办事项

  • 更多单元测试
  • 缓存URL配置的更好语法
  • 基于regexp的url匹配
  • 可配置的缓存键(以便多个应用程序可以使用相同的 memcached实例,无需担心缓存的url相同)
  • 可配置的请求字符集

欢迎提出修补程序/请求。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用“Wed,01 Jul 2015 17:32:41 EDT”解析字符串   java Storm apache升级(1.0.0到2.0.0)   java类驻留在不同的目录中,而不是包指定的目录。为什么?   将Java中的图像缩放到非常小的维度   java如何通过子文档从自定义方面访问ElasticSearch parentdoc字段   java如何在RationalSoftwareArchitect中使用findbugs?   Java中的事件提升处理   java值被添加到arrayList的所有索引中,而不是在“”时添加到最后一个索引中。正在使用arraylist的add()方法   JFrame中的java JPanel派生类   java如何用循环和异步方法模拟类   java Android阻止可绘制背景超出视图范围   为客户排序Java阵列   java Apache poi如何将工作表设置为枚举位置值属性?   java Rhino在使用自定义类参数调用javascript函数时出错   java格式化日期从年月日到年月日   spring如何修复java。lang.illegalargumentexception在此特定场景中是否尝试创建具有null实体的合并事件?   java如何创建更好的对象