Настройка компонента кэша Symfony 3.1 с помощью Redis

Я пытаюсь настроить кэш Symfony 3.1 с помощью Redis. Я следую этому уроку:

https://symfony.com/blog/new-in-symfony-3-1-cache-component

Я установил predis / predis и SncRedisBundle.

В моем config.yml я положил

framework:
cache:
app: cache.adapter.redis
default_redis_provider: redis://192.168.34.10
snc_redis:
clients:
default:
type: predis
alias: default
dsn: redis://192.168.34.10
logging: %kernel.debug%
cache:
type: predis
alias: cache
dsn: redis://192.168.34.10
logging: %kernel.debug%
options:
connection_timeout: 10
read_write_timeout: 30

Теперь, когда я пытаюсь получить доступ к Redis через snc_redis работает нормально. Но когда я пытаюсь использовать компонент кэша:

public function getLoggedUserAcl($userId)
{
$cachedResources = $this->cacheAdapter->getItem('acl.rules');
$cachedResources->expiresAfter(100);

if ($cachedResources->isHit()) {
dump('hit');
$resources = $cachedResources->get();
} else {
dump('not-hit');
$resources = $this->api->getCollection(Resource::class, null, null, [
'userId' => $userId
]);

$cachedResources->set($resources);
}

return $resources;
}

CacheAdapter is @cache.app оказание услуг.

Все время сваливает NOT_HIT, В логах нет ничего относительно REDIS.

Не могли бы вы сказать мне, где я совершил ошибку, или дать подсказку, что может быть не так?

4

Решение

Самое важное, что вы здесь упустили, — это сохранить результат в кеш:

$cachedResources->set($resources);

$this->cacheAdapter->save($cachedResources);
6

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]