我尝试将Docs与Redis和Predis以及Doctrine Result Caching和Symfony一起使用。
我想知道我的缓存+ doctrine + redis + predis + SncRedisBundle配置是否设置正确
$query = $repository->createQueryBuilder('p')
->where('p.id < :id')
->setParameter('id', '100')
->orderBy('p.id', 'ASC')
->getQuery()
->useQueryCache(true)
->useResultCache(true);
$products = $query->getResult();
因为下面的查询显示了预期的内容,但我怎么知道它是否来自缓存?
public dynamic CreateOrUpdate([FromBody]object body)
{
return _blService.CreateOrder(body);
}
答案 0 :(得分:0)
正如您在此测试https://github.com/doctrine/doctrine2/blob/master/tests/Doctrine/Tests/ORM/Functional/ResultCacheTest.php#L40中所看到的,没有任何功能可以执行此操作。
您可以通过定义自己的cacheId或使用 已弃用 ->getQuery()->getResultCacheId()
->getQuery()->getQueryCacheProfile()->getCacheKey()
和->getQuery()->getResultCacheDriver()->fetch($cacheKey)
来源:https://github.com/doctrine/doctrine2/blob/master/lib/Doctrine/ORM/AbstractQuery.php#L945