【发布时间】:2013-05-19 16:36:09
【问题描述】:
我有一个函数,它给定一个参数计算相应的值并返回它。函数的返回值仅取决于其参数,因此我想以某种方式缓存(记忆)该值。此外,我还希望能够使缓存值无效。
这似乎是一种普遍的需求,所以我试图避免重新发明轮子。
我正在寻找的是一个高级的、高度可配置的高性能库(工具、框架等),并且希望所做的更改尽可能精简。一些优点是:
- 高效处理并发请求
- 能够使用不同的缓存后端(例如 RAM 或 DB)
- 保持对大规模数据的响应能力
有哪些不错的库可供使用,它们的比较如何?
【问题讨论】:
-
如果只依赖输入参数,在什么情况下会使缓存值失效?
-
@Daenyth 缓存失效只会按需执行(以防管理员明确要求重新计算值)
-
@JakubM。我要求更高级的库或框架。性能很重要,我想避免 NIH 综合症(即使用可用的库和框架),并希望更改尽可能精简(编辑问题以反映需求)
-
@JanneKarila 我正在寻找的是一种先进的可配置高性能(可能基于某些数据库)解决方案。你能不能别再提醒我应该如何使用装饰器了?
标签: python caching memoization