ntb/silverstripe-caching

增加缓存数据对象、函数结果和任意数据的支持。

这个包的官方仓库似乎已经消失,因此该包已被冻结。

安装: 244

依赖项: 0

建议者: 0

安全: 0

星标: 4

关注者: 2

分支: 2

开放问题: 1

类型:silverstripe-module

0.1.9 2016-04-13 09:24 UTC

This package is auto-updated.

Last update: 2022-02-19 20:33:06 UTC


README

Build Status Latest Stable Version License

增加缓存数据对象、函数结果和任意数据的支持。

使用方法

与其他扩展类似,您可以通过以下代码将自动缓存对象的能力添加到您的YAML文件中。

Member:
  extensions:
    - CacheableExtension

建议您指定一个比Silverstripe默认缓存更好的缓存,因为它被配置为使用文件缓存后端。这可能比直接访问数据库要差得多。

工作原理

当通过<ClassName>::byID<ClassName>::byURL请求数据对象时,缓存数据列表实现会检查请求对象是否标记为可缓存。如果是,则会请求缓存,只有在未找到任何内容的情况下才会访问数据库。在获取对象后,会获取每个has_one依赖项,并将结果存储在缓存中。

当应该删除数据对象或对象已被修改时,缓存条目将被清除或替换。