Caching Symfony2 ACL缓存
有没有关于如何在Symfony2中缓存ACL查询的示例或更好的文档 我发现:Caching Symfony2 ACL缓存,caching,symfony,acl,Caching,Symfony,Acl,有没有关于如何在Symfony2中缓存ACL查询的示例或更好的文档 我发现: 但是我不知道如何在我的支票上使用这个 我已设法缓存对象身份。这有点帮助,但不多 在深入研究security*.xml文件之后,我对config.yml进行了以下修改: doctrine: orm: result_cache_driver: type: apc security: acl: cache: id: s
但是我不知道如何在我的支票上使用这个 我已设法缓存对象身份。这有点帮助,但不多 在深入研究security*.xml文件之后,我对config.yml进行了以下修改:
doctrine:
orm:
result_cache_driver:
type: apc
security:
acl:
cache:
id: security.acl.cache.doctrine
prefix: my_acl_prefix_
- 我已将缓存id(服务id)添加到ACL配置中
- 我已启用条令结果缓存
doctrine:
orm:
result_cache_driver:
type: apc
security:
acl:
cache:
id: security.acl.cache.doctrine
prefix: my_acl_prefix_
这将只启用ObjectIdentity的缓存,但在调用Symfony\Component\Security\Acl\Dbal\AclProvider::getAncestorIds()
时会发生许多其他查询。该方法直接执行SQL查询,不使用缓存。在2.2和2.3中,方法中有一条注释,说明:
// FIXME: skip ancestors which are cached
就不使用结果缓存而言,该类中的其他两个方法也是如此
我想通过实现您自己的AclProvider并注入实体管理器的结果缓存,您也可以缓存这些查询 嗯,这是一个有趣的问题。调查。。。