页面缓存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中的类似: get,set,delete,add
安装
您可以从 github repository:
git clone git://github.com/abiczo/pagecache.git cd pagecache python setup.py install
待办事项
- 更多单元测试
- 缓存URL配置的更好语法
- 基于regexp的url匹配
- 可配置的缓存键(以便多个应用程序可以使用相同的 memcached实例,无需担心缓存的url相同)
- 可配置的请求字符集
欢迎提出修补程序/请求。